一、动态加载ui文件的写法 import os import time from PySide2 import QtGui from PySide2.QtCore import QFile from PySide2.QtWidgets import QApplication, QMessageBox from PySide2.QtUiTools import QUiLoader from demo.download import WtiteDate class Stats: def __init__(self): qfile = QFile('ui/ui1.ui') qfile.open(QFile.ReadOnly) qfile.close() self.ui = QUiLoader().load(qfile) self.ui.pushButton.clicked.connect(self.handleCalc) self.ui.pushButton_2.clicked.connect(self.xiazaitupian) self.ui.pushButton_2.clicked.connect(self.xiazaishipin) def handleCalc(self): self.ui.textEdit.setText("随便玩玩咯") def xiazaitupian(self): name = self.ui.lineEdit.text() date = WtiteDate().downloadimg(name) path = "D:\\pychram\\QT_pachong\\爬取数据" lists = os.listdir(path) """拿最新的一个图片展示""" lists.sort(key=lambda x:os.path.getctime((path+"\\"+x))) img = lists[-1] pixmap = QtGui.QPixmap(f"{path}/{img}") # 导入本地图片 # 设置lable的图片 self.ui.label_2.setPixmap(pixmap) # 设置图片到label self.ui.label_2.setScaledContents(True) # l图片自适应 self.ui.label_2.show() # 设置textEdit的文字内容 self.ui.textEdit.setText("随便玩玩咯") # 设置框内提示文字 textEdit.setPlaceholderText("请输入薪资表") # 设置lineEdit的文字内容 self.ui.lineEdit.setText("随便玩玩咯") # 设置plainTextEdit的文字内容 self.ui.lineEdit.setText("随便玩玩咯")
if __name__ == '__main__': app = QApplication([]) stats = Stats() stats.ui.show() app.exec_()
二、ui文件转为py文件再去加载的写法,转文件命令:pyside2-uic video.ui > video.py
from PySide2.QtCore import QFile, Qt, QStringListModel from PySide2.QtGui import QPixmap from PySide2.QtUiTools import QUiLoader from PySide2.QtWidgets import QApplication, QFileDialog, QMainWindow, QMessageBox from ui.video import Ui_MainWindow class Test(QMainWindow,Ui_MainWindow): # Test(QWidget, Ui_Form) def __init__(self): # 加载运行ui文件 super(Test, self).__init__() self.setupUi(self) self.label.setText("测试") if __name__ == '__main__': app = QApplication([]) # app.setStyle('Fusion') window = Test() window.window_init() window.show() app.exec_() 三、打包命令:pyinstaller -F -w pachong.py --noconsole --hidden-import PySide2.QtXml --hidden-import selenium