用Python是为了写出好用的工具软件,但对于非程序员来说,看到命令行体验不是一般的差,所以还需要有个图形界面。
因为本人新手,所以用了Pycharm编辑器,又通过查询,很多人推荐QT写界面。由于Pyside2是官方支持,以后可能会更加广泛,就使用了Pyside2。根据网上教程,在Pycharm上安装了Pyside2-Designer和PyUIC,终于支持拖动绘制界面了,深度兼容以前常用的VB编辑器。
好了,现在该记录下具体使用方法了。
1.调出Pyside2-Designer.。
2.创建新界面。
3.拖动绘画具体控件,并调整位置。
4.然后点保存,选择具体路径和文件名。
5.此时项目里已经有了一个.UI的文件,就是刚才的我们画的界面。
6.利用PYUIC转化为Python文件。
7.转换后,会看到多了一个.py文件
8.可以看下里面的代码。
1 # -*- coding: utf-8 -*- 2 3 ################################################################################ 4 ## Form generated from reading UI file 'hello.ui' 5 ## 6 ## Created by: Qt User Interface Compiler version 5.15.2 7 ## 8 ## WARNING! All changes made in this file will be lost when recompiling UI file! 9 ################################################################################ 10 11 from PySide2.QtCore import * 12 from PySide2.QtGui import * 13 from PySide2.QtWidgets import * 14 15 16 class Ui_MainWindow(object): 17 def setupUi(self, MainWindow): 18 if not MainWindow.objectName(): 19 MainWindow.setObjectName(u"MainWindow") 20 MainWindow.resize(800, 600) 21 self.centralwidget = QWidget(MainWindow) 22 self.centralwidget.setObjectName(u"centralwidget") 23 self.pushButton = QPushButton(self.centralwidget) 24 self.pushButton.setObjectName(u"pushButton") 25 self.pushButton.setGeometry(QRect(160, 150, 75, 23)) 26 MainWindow.setCentralWidget(self.centralwidget) 27 self.menubar = QMenuBar(MainWindow) 28 self.menubar.setObjectName(u"menubar") 29 self.menubar.setGeometry(QRect(0, 0, 800, 22)) 30 MainWindow.setMenuBar(self.menubar) 31 self.statusbar = QStatusBar(MainWindow) 32 self.statusbar.setObjectName(u"statusbar") 33 MainWindow.setStatusBar(self.statusbar) 34 35 self.retranslateUi(MainWindow) 36 37 QMetaObject.connectSlotsByName(MainWindow) 38 # setupUi 39 40 def retranslateUi(self, MainWindow):
#‘我的第一个界面’是我自己修改的,发现是界面的标题 41 MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"我的第一个界面", None)) 42 self.pushButton.setText(QCoreApplication.translate("MainWindow", u"hello", None)) 43 # retranslateUi
9.最后一步,也是最关键的一步了,我们要让界面显示出来。新建一个PY文件,代码如下。
1 # -*- coding: utf-8 -*- 2 # @Time : 2021/5/14 9:59 3 # @Author : SHC 4 # @File : show.py 5 # @Software: PyCharm 6 7 """ 8 文件说明:运行此文件,可显示出界面了 9 """ 10 import sys 11 from PySide2.QtWidgets import QApplication, QMainWindow 12 from hello import * 13 14 15 class MyWindow(QMainWindow, Ui_MainWindow): 16 def __init__(self, parent=None): 17 super(MyWindow, self).__init__(parent) 18 self.setupUi(self) 19 20 21 if __name__ == '__main__': 22 app = QApplication(sys.argv) 23 myWin = MyWindow() 24 myWin.show() 25 sys.exit(app.exec_())
需注意:第12行的hello为界面转换后的PY文件,要根据实际情况修改。
10.修改后,界面显示。