PySide2 QT designer + Windows + Anaconda环境下 + 配置PyCharm快捷打开QT designer
QT designer 文件路径
D:\ProgramData\Anaconda3\envs\pyside_test\Lib\site-packages\PySide2
PyCharm配置PySide2 QT designer快捷方式
File -> Settings -> Tools -> External Tools -> +(下图加号)
Name: QtDesigner
Description: QtDesigner
Program: D:\ProgramData\Anaconda3\envs\pyside_test\Lib\site-packages\PySide2\designer.exe
Working directory: $ProjectFileDir$
File -> Settings -> Tools -> External Tools -> +(下图加号)
Name: QtDesigner
Description: QtDesigner
Program: D:\ProgramData\Anaconda3\envs\pyside_test\Lib\site-packages\PySide2\designer.exe
Working directory: $ProjectFileDir$
PySide2 UIC 文件路径
D:\ProgramData\Anaconda3\envs\pyside_test\Scripts
PyCharm配置PySide2 QT designer快捷方式
File -> Settings -> Tools -> External Tools -> +(下图加号)
Name: PyUIC
Description: PyUIC
Program: D:\ProgramData\Anaconda3\envs\pyside_test\Scripts\pyside2-uic.exe
Arguments: $FileName$ -o $FileNameWithoutExtension$.py
Working directory: $FileDir$
打开PySide2 QT designer
拖拽设计图形化界面
保存到代码目录
.ui文件转.py文件
生成.py文件
查看代码
# -*- coding: utf-8 -*-
################################################################################
## Form generated from reading UI file 'login.ui'
##
## Created by: Qt User Interface Compiler version 5.15.2
##
## WARNING! All changes made in this file will be lost when recompiling UI file!
################################################################################
import sys
from PySide2 import QtWidgets
from PySide2.QtCore import *
from PySide2.QtGui import *
from PySide2.QtWidgets import *
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
if not MainWindow.objectName():
MainWindow.setObjectName(u"MainWindow")
MainWindow.resize(349, 368)
self.centralwidget = QWidget(MainWindow)
self.centralwidget.setObjectName(u"centralwidget")
self.widget = QWidget(self.centralwidget)
self.widget.setObjectName(u"widget")
self.widget.setGeometry(QRect(14, 76, 311, 191))
self.gridLayout = QGridLayout(self.widget)
self.gridLayout.setObjectName(u"gridLayout")
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.label = QLabel(self.widget)
self.label.setObjectName(u"label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
self.lineEdit = QLineEdit(self.widget)
self.lineEdit.setObjectName(u"lineEdit")
self.gridLayout.addWidget(self.lineEdit, 0, 1, 1, 2)
self.label_2 = QLabel(self.widget)
self.label_2.setObjectName(u"label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.lineEdit_2 = QLineEdit(self.widget)
self.lineEdit_2.setObjectName(u"lineEdit_2")
self.gridLayout.addWidget(self.lineEdit_2, 1, 1, 1, 2)
self.pushButton = QPushButton(self.widget)
self.pushButton.setObjectName(u"pushButton")
self.gridLayout.addWidget(self.pushButton, 2, 0, 1, 2)
self.pushButton_2 = QPushButton(self.widget)
self.pushButton_2.setObjectName(u"pushButton_2")
self.gridLayout.addWidget(self.pushButton_2, 2, 2, 1, 1)
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QMenuBar(MainWindow)
self.menubar.setObjectName(u"menubar")
self.menubar.setGeometry(QRect(0, 0, 349, 23))
MainWindow.setMenuBar(self.menubar)
self.statusbar = QStatusBar(MainWindow)
self.statusbar.setObjectName(u"statusbar")
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QMetaObject.connectSlotsByName(MainWindow)
# setupUi
def retranslateUi(self, MainWindow):
MainWindow.setWindowTitle(QCoreApplication.translate("MainWindow", u"MainWindow", None))
self.label.setText(QCoreApplication.translate("MainWindow", u"\u8d26\u53f7", None))
self.label_2.setText(QCoreApplication.translate("MainWindow", u"\u5bc6\u7801", None))
self.pushButton.setText(QCoreApplication.translate("MainWindow", u"\u786e\u5b9a", None))
self.pushButton_2.setText(QCoreApplication.translate("MainWindow", u"\u53d6\u6d88", None))
# retranslateUi
代码尾部加入函数和调用函数
def show_MainWindow(self):
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
if __name__ == '__main__':
ui_main = Ui_MainWindow()
ui_main.show_MainWindow()
运行代码,查看最终结果
欢迎大家交流学习,任何问题都可以留言