使用QtDesigner设计GUI界面,然后进行简单的美化。
1、设计界面
新建项目文件夹pyside_start,并使用VSCode打开,在该项目文件夹下新建ui目录,然后右键New Form,打开QtDesigner工具设计好如下界面: 然后选择菜单 窗体->View Python Code ,点击复制全部,将复制的代码保存在ui文件夹下 main_ui.py。
2、主文件
在项目目录下新建main.py文件,调用生成的界面,如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| import sys from PySide2.QtWidgets import * from PySide2.QtCore import * from PySide2.QtGui import *
from ui.main_ui import Ui_MainWindow
class MainWindow(Ui_MainWindow, QMainWindow): def __init__(self): super(MainWindow, self).__init__() self.setupUi(self)
self.pushButton.clicked.connect(self.on_pushbutton)
def on_pushbutton(self): msgbox = QMessageBox.information(self,"msg","you login succeed!")
if __name__ == "__main__": app = QApplication(sys.argv)
mwin = MainWindow() mwin.show()
sys.exit(app.exec_())
|
点击运行可以正常显示窗口。
3、简单美化
使用一个库简单美化下,需要先安装好qtmodern这个库,在main函数添加如下代码即可:
1 2 3 4 5 6 7 8 9 10 11 12
| if __name__ == "__main__": app = QApplication(sys.argv)
mwin = MainWindow()
qtmodern.styles.dark(app) win = qtmodern.windows.ModernWindow(mwin)
win.show()
sys.exit(app.exec_())
|
然后设置好标题和logo,如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| if __name__ == "__main__": app = QApplication(sys.argv)
app.setWindowIcon(QIcon("monkey2.ico"))
mwin = MainWindow() mwin.setWindowTitle("pyside start example")
qtmodern.styles.dark(app) win = qtmodern.windows.ModernWindow(mwin)
win.show()
sys.exit(app.exec_())
|
最终效果如下: 如果进行打包,可以使用PyInstaller或Nuitka,参考这个文章:https://www.pythonguis.com/tutorials/packaging-pyside2-applications-windows-pyinstaller/ 代码仓库:https://github.com/makerinchina-iot/Monkey-Helper-Tools-py