用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.修改后,界面顯示。