在学习中经常遇到上位机的问题,想自己做一个上位机玩玩,先使用Python设计一个简单界面。
目标:利用python语言设计一个简单界面
环境:PyQt5库,pycharm软件,QtDesigner软件
思路:利用QtDesignert软件设计界面,并保存,然后通过pyuic5程序将ui文件转换为py文件,最后编写一个main.py文件,运行py文件并显示。
首先要安装PyQt5库文件,里面包含QtDesigner软件,然后配置pycharm软件(具体的配置过程见文末参考资料1),首先用QtDesigner软件设计一个界面,并在其中写一些文字,如图1所示。
图1 QtDesigner设计的界面
将这个文件保存到一个新建文件夹中,这个文件夹会保存pyuic5程序转换的py文件。然后利用pyuic5程序将ui文件转换为.py文件,操作如图2所示。在图2中,我们会发现有一个"test1.ui"文件和"test1.py"文件,"test1.py"文件就是由ui文件转换而成的,我们可以编译看看,但是编译器不会弹出我们用QtDesigner文件做的界面,也不会报错,如果报错,解决方案请参考文末参考资料2,接下来还需要写一个运行代码,这个代码相对简单,就是要规范运行test1.py文件。
图2 将ui文件转换为py文件的操作
新建一个.py文件,在我的文件中命名为“main.py”,然后在文件中敲下如下代码:
import sys
import test1
from PyQt5.QtWidgets import QApplication, QMainWindow
if __name__ == '__main__': #import到其他的python脚本中被调用(模块重用)执行,sys.argv就是运行程序时候获取命令行参数
app = QApplication(sys.argv) #创建了一个QApplication对象,对象名为app,带两个参数sys.argv
MainWindow = QMainWindow() #创建主窗口程序,将QMainWindow()类赋给对象MainWindow
ui = test1.Ui_MainWindow() #将Ui_MainWindows()类赋给对象ui
ui.setupUi(MainWindow) #调用函数setupUi()
MainWindow.show() #显示窗口
sys.exit(app.exec_()) #app.exet_()程序一直循环运行直到主窗口被关闭终止进程
然后再编译“main.py”文件即可看到我们自己制作的界面。如图3所示
图3 运行结果