![在这里插入图片描述](http://image109.360doc.com/DownloadImg/2019/07/1617/166168449_1_20190716055601785.png) 这是使用PyCharm编辑的工程。 关于PyCharm PyQt designer怎么搭建,由于资料太多这里就不赘述。然而对于ui文件的使用我有自己的看法。多数教程是在IDE里调用uic生成包含界面信息的py文件。这是我不太喜欢的地方。另外有一些资料在细节上处理的不是很好。所以我给出一个我认为比较完美的解决方法。
test.ui是PyQt5 designer生成的ui描述文件。 有一个界面一个按钮 Ss.py随便写的一个用于调用的文件 def ShowString():
print("Hello EveryOne")
m.py是主运行文件 import sys
from PyQt5.uic import loadUi
from PyQt5.QtWidgets import QMainWindow, QApplication
from Ss import ShowString
class 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函数我这里也没有,原因同上,因为此函数用于多重继承。
|