test.ui是PyQt5 designer生成的ui描述文件。
有一个界面一个按钮
Ss.py随便写的一个用于调用的文件
def ShowString(): print("Hello EveryOne")
m.py是主运行文件
import sysfrom PyQt5.uic import loadUifrom PyQt5.QtWidgets import QMainWindow, QApplicationfrom Ss import ShowStringclass MainWindow(QMainWindow): def __init__(self): QMainWindow.__init__(self) loadUi("test.ui", self) self.pushButton.clicked.connect(ShowString) app = QApplication(sys.argv)window = MainWindow()window.show()sys.exit(app.exec_())
这样,界面描述、运行的函数、主运行程序就全部分离了。
loadUi
其实PyQt5.uic提供了两个直接使用ui文件的方式。
另一个是loadUiType,我个人是觉得啰嗦了一点。loadUi("test.ui", self)
会把ui文件里的设置传递到self
setupUi函数我这里没有,只有通过生成py或者调用loadUiType的才需要。
super函数我这里也没有,原因同上,因为此函数用于多重继承。
联系客服