Pycharm安裝Qt Design快捷工具的詳細(xì)教程
在使用Python開(kāi)發(fā)Gui程序可以使用Qt Design工具進(jìn)行界面設(shè)計(jì),下面記錄在Pycharm中設(shè)置Qt Design快捷工具和如何把Qt Design中圖形化的ui界面文件轉(zhuǎn)化成py文件
先記錄好需要填寫的內(nèi)容
1、Qt_Designer 快捷工具名稱
2、(填寫Qt安裝的路徑 designer.exe)
3、$ProjectFileDir$
1、PyUIC 快捷工具名稱
2、python的安裝目錄
3、-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py Ui文件轉(zhuǎn)py文件
4、$FileDir$ 文件目錄
步驟一:pycharm中 File>Settings>Tools>External Tools,如下圖所示,參考截圖設(shè)置
設(shè)置好后就可以在Pycharm中看到該工具
接下來(lái)用Qt Design設(shè)計(jì)一款Gui界面,如下圖
在Qt Designer可視化界面設(shè)計(jì)好后導(dǎo)出該文件,最后用PyUIC工具轉(zhuǎn)化成python代碼
# -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'chepiao.ui' # # Created by: PyQt5 UI code generator 5.15.1 # # WARNING: Any manual changes made to this file will be lost when pyuic5 is # run again. Do not edit this file unless you know what you are doing. from PyQt5 import QtCore, QtGui, QtWidgets import sys from PyQt5.QtGui import QPalette,QPixmap,QColor class Ui_MainWindow(object): def setupUi(self, MainWindow): MainWindow.setObjectName("MainWindow") MainWindow.resize(960, 786) MainWindow.setMinimumSize(QtCore.QSize(960, 786)) MainWindow.setMaximumSize(QtCore.QSize(960, 786)) self.centralwidget = QtWidgets.QWidget(MainWindow) self.centralwidget.setObjectName("centralwidget") self.label_title_img = QtWidgets.QLabel(self.centralwidget) self.label_title_img.setGeometry(QtCore.QRect(0, 0, 960, 141)) title_img = QPixmap('png/bg1.png') # 打開(kāi)頂部位圖 self.label_title_img.setPixmap(title_img) #設(shè)置調(diào)色板 self.label_title_img.setText("") self.label_title_img.setObjectName("label_title_img") self.widget_query = QtWidgets.QWidget(self.centralwidget) self.widget_query.setGeometry(QtCore.QRect(0, 141, 960, 80)) #self.widget_query.setStyleSheet("background-image: url(:/png/bg3.png);") self.widget_query.setAutoFillBackground(True) #開(kāi)啟自動(dòng)填充背景 palette = QPalette() #調(diào)色板類 palette.setBrush(QPalette.Background,QtGui.QBrush(QtGui.QPixmap('png/bg2.png'))) self.widget_query.setPalette(palette) self.widget_query.setObjectName("widget_query") self.label = QtWidgets.QLabel(self.widget_query) self.label.setGeometry(QtCore.QRect(30, 30, 54, 12)) self.label.setObjectName("label") self.textEdit = QtWidgets.QTextEdit(self.widget_query) self.textEdit.setGeometry(QtCore.QRect(80, 20, 110, 30)) self.textEdit.setObjectName("textEdit") self.label_2 = QtWidgets.QLabel(self.widget_query) self.label_2.setGeometry(QtCore.QRect(240, 30, 54, 12)) self.label_2.setObjectName("label_2") self.textEdit_2 = QtWidgets.QTextEdit(self.widget_query) self.textEdit_2.setGeometry(QtCore.QRect(300, 20, 110, 30)) self.textEdit_2.setObjectName("textEdit_2") self.label_3 = QtWidgets.QLabel(self.widget_query) self.label_3.setGeometry(QtCore.QRect(490, 30, 54, 12)) self.label_3.setObjectName("label_3") self.textEdit_3 = QtWidgets.QTextEdit(self.widget_query) self.textEdit_3.setGeometry(QtCore.QRect(560, 20, 110, 30)) self.textEdit_3.setObjectName("textEdit_3") self.toolButton = QtWidgets.QToolButton(self.widget_query) self.toolButton.setGeometry(QtCore.QRect(720, 22, 54, 26)) self.toolButton.setObjectName("toolButton") self.textEdit_2.raise_() self.label.raise_() self.label_2.raise_() self.label_3.raise_() self.textEdit.raise_() self.textEdit_3.raise_() self.toolButton.raise_() self.label_cepiaptype = QtWidgets.QLabel(self.centralwidget) self.label_cepiaptype.setGeometry(QtCore.QRect(0, 220, 960, 60)) #self.label_cepiaptype.setStyleSheet("background-image: url(:/png/bg3.png);") self.label_cepiaptype.setAutoFillBackground(True) # 開(kāi)啟自動(dòng)填充背景 palette = QPalette() # 調(diào)色板類 palette.setBrush(QPalette.Background, QtGui.QBrush(QtGui.QPixmap('png/bg3.png'))) self.label_cepiaptype.setPalette(palette) self.label_cepiaptype.setText("") self.label_cepiaptype.setObjectName("label_cepiaptype") self.checkBox = QtWidgets.QCheckBox(self.centralwidget) self.checkBox.setGeometry(QtCore.QRect(100, 240, 71, 16)) self.checkBox.setObjectName("checkBox") self.checkBox_2 = QtWidgets.QCheckBox(self.centralwidget) self.checkBox_2.setGeometry(QtCore.QRect(250, 240, 71, 16)) self.checkBox_2.setObjectName("checkBox_2") self.checkBox_3 = QtWidgets.QCheckBox(self.centralwidget) self.checkBox_3.setGeometry(QtCore.QRect(400, 240, 71, 16)) self.checkBox_3.setObjectName("checkBox_3") self.checkBox_4 = QtWidgets.QCheckBox(self.centralwidget) self.checkBox_4.setGeometry(QtCore.QRect(550, 240, 71, 16)) self.checkBox_4.setObjectName("checkBox_4") self.checkBox_5 = QtWidgets.QCheckBox(self.centralwidget) self.checkBox_5.setGeometry(QtCore.QRect(700, 240, 71, 16)) self.checkBox_5.setObjectName("checkBox_5") self.label_4 = QtWidgets.QLabel(self.centralwidget) self.label_4.setGeometry(QtCore.QRect(30, 240, 54, 12)) self.label_4.setObjectName("label_4") self.label_cepiaptype_2 = QtWidgets.QLabel(self.centralwidget) self.label_cepiaptype_2.setGeometry(QtCore.QRect(0, 280, 960, 60)) #self.label_cepiaptype_2.setStyleSheet("background-image: url(:/png/bg4.png);") self.label_cepiaptype_2.setAutoFillBackground(True) # 開(kāi)啟自動(dòng)填充背景 palette = QPalette() # 調(diào)色板類 palette.setBrush(QPalette.Background, QtGui.QBrush(QtGui.QPixmap('png/bg4.png'))) self.label_cepiaptype_2.setPalette(palette) self.label_cepiaptype_2.setText("") self.label_cepiaptype_2.setObjectName("label_cepiaptype_2") self.textBrowser = QtWidgets.QTextBrowser(self.centralwidget) self.textBrowser.setGeometry(QtCore.QRect(0, 340, 970, 450)) self.textBrowser.setObjectName("textBrowser") self.widget_query.raise_() self.label_cepiaptype.raise_() self.label_title_img.raise_() self.checkBox.raise_() self.checkBox_2.raise_() self.checkBox_3.raise_() self.checkBox_4.raise_() self.checkBox_5.raise_() self.label_4.raise_() self.label_cepiaptype_2.raise_() self.textBrowser.raise_() MainWindow.setCentralWidget(self.centralwidget) self.retranslateUi(MainWindow) QtCore.QMetaObject.connectSlotsByName(MainWindow) def retranslateUi(self, MainWindow): _translate = QtCore.QCoreApplication.translate MainWindow.setWindowTitle(_translate("MainWindow", "快手爬票")) self.label.setText(_translate("MainWindow", "出發(fā)地")) self.label_2.setText(_translate("MainWindow", "目的地")) self.label_3.setText(_translate("MainWindow", "出發(fā)日期")) self.toolButton.setText(_translate("MainWindow", "查詢")) self.checkBox.setText(_translate("MainWindow", "GC-高鐵")) self.checkBox_2.setText(_translate("MainWindow", "D-動(dòng)車")) self.checkBox_3.setText(_translate("MainWindow", "Z-直達(dá)")) self.checkBox_4.setText(_translate("MainWindow", "T-特快")) self.checkBox_5.setText(_translate("MainWindow", "K-快速")) self.label_4.setText(_translate("MainWindow", "車次類型:")) def show_MainWindow(): app = QtWidgets.QApplication(sys.argv) MainWindow = QtWidgets.QMainWindow() ui = Ui_MainWindow() ui.setupUi(MainWindow) MainWindow.show() sys.exit(app.exec_()) show_MainWindow()
設(shè)計(jì)好界面后接下來(lái)完成功能
到此這篇關(guān)于Pycharm安裝Qt Design快捷工具的文章就介紹到這了,更多相關(guān)Pycharm安裝Qt Design快捷工具內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python中類的輸出或類的實(shí)例輸出為<__main__類名 object at xxxx>這種形式的原因
在本篇文章里小編給大家分享了關(guān)于python中類的輸出或類的實(shí)例輸出為何是<__main__類名 object at xxxx>這種形式,需要的朋友們可以參考下。2019-08-08Python數(shù)據(jù)持久化shelve模塊用法分析
這篇文章主要介紹了Python數(shù)據(jù)持久化shelve模塊用法,結(jié)合實(shí)例形式較為詳細(xì)的總結(jié)分析了shelve模塊的功能、原理及簡(jiǎn)單使用方法,需要的朋友可以參考下2018-06-06python 獲取計(jì)算機(jī)的網(wǎng)卡信息
這篇文章主要介紹了python 獲取計(jì)算機(jī)的網(wǎng)卡信息的方法,幫助大家更好的理解和學(xué)習(xí)python,感興趣的朋友可以了解下2021-02-02python pandas庫(kù)中DataFrame對(duì)行和列的操作實(shí)例講解
今天小編就為大家分享一篇python pandas庫(kù)中DataFrame對(duì)行和列的操作實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06Python編寫的com組件發(fā)生R6034錯(cuò)誤的原因與解決辦法
pythoncom27.dll可能沒(méi)有包含manifest信息,或者沒(méi)有包含正確的manifest信息,或者系統(tǒng)中的c++ runtime library受到破壞都有可能造成這種現(xiàn)象2013-04-04Python函數(shù)之iterrows(),iteritems(),itertuples()的區(qū)別說(shuō)明
這篇文章主要介紹了Python函數(shù)之iterrows(),iteritems(),itertuples()的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05Python解析JSON數(shù)據(jù)的方法簡(jiǎn)單例子
這篇文章主要給大家介紹了關(guān)于Python解析JSON數(shù)據(jù)的方法,解析JSON文件是Python中非常常見(jiàn)的操作,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-09-09