Pycharm安装Qt Design快捷工具的详细教程


Posted in Python onNovember 18, 2020

在使用Python开发Gui程序可以使用Qt Design工具进行界面设计,下面记录在Pycharm中设置Qt Design快捷工具和如何把Qt Design中图形化的ui界面文件转化成py文件
先记录好需要填写的内容
1、Qt_Designer 快捷工具名称
2、(填写Qt安装的路径 designer.exe)
3、$ProjectFileDir$

1、PyUIC 快捷工具名称
2、python的安装目录
3、-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py Ui文件转py文件
4、$FileDir$ 文件目录

步骤一:pycharm中 File>Settings>Tools>External Tools,如下图所示,参考截图设置

Pycharm安装Qt Design快捷工具的详细教程
Pycharm安装Qt Design快捷工具的详细教程

设置好后就可以在Pycharm中看到该工具

Pycharm安装Qt Design快捷工具的详细教程

接下来用Qt Design设计一款Gui界面,如下图

Pycharm安装Qt Design快捷工具的详细教程

在Qt Designer可视化界面设计好后导出该文件,最后用PyUIC工具转化成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') # 打开顶部位图
    self.label_title_img.setPixmap(title_img) #设置调色板

    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) #开启自动填充背景
    palette = QPalette() #调色板类
    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) # 开启自动填充背景
    palette = QPalette() # 调色板类
    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) # 开启自动填充背景
    palette = QPalette() # 调色板类
    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", "出发地"))
    self.label_2.setText(_translate("MainWindow", "目的地"))
    self.label_3.setText(_translate("MainWindow", "出发日期"))
    self.toolButton.setText(_translate("MainWindow", "查询"))
    self.checkBox.setText(_translate("MainWindow", "GC-高铁"))
    self.checkBox_2.setText(_translate("MainWindow", "D-动车"))
    self.checkBox_3.setText(_translate("MainWindow", "Z-直达"))
    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()

设计好界面后接下来完成功能

Pycharm安装Qt Design快捷工具的详细教程

到此这篇关于Pycharm安装Qt Design快捷工具的文章就介绍到这了,更多相关Pycharm安装Qt Design快捷工具内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python使用minidom读写xml的方法
Jun 03 Python
python中input()与raw_input()的区别分析
Feb 27 Python
Python函数的周期性执行实现方法
Aug 13 Python
python 读写excel文件操作示例【附源码下载】
Jun 19 Python
python中while和for的区别总结
Jun 28 Python
pandas DataFrame创建方法的方式
Aug 02 Python
python飞机大战pygame游戏之敌机出场实现方法详解
Dec 17 Python
详解Python中字符串前“b”,“r”,“u”,“f”的作用
Dec 18 Python
python实现俄罗斯方块游戏(改进版)
Mar 13 Python
结束运行python的方法
Jun 16 Python
用python发送微信消息
Dec 21 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 #Python
Python urllib3软件包的使用说明
Nov 18 #Python
Python从文件中读取数据的方法步骤
Nov 18 #Python
详解Python中如何将数据存储为json格式的文件
Nov 18 #Python
python3中calendar返回某一时间点实例讲解
Nov 18 #Python
关于Python3的import问题(pycharm可以运行命令行import错误)
Nov 18 #Python
python 实现弹球游戏的示例代码
Nov 17 #Python
You might like
关于手调机和数调机的选择
2021/03/02 无线电
解析php框架codeigniter中如何使用框架的session
2013/06/24 PHP
php中$美元符号与Zen Coding冲突问题解决方法分享
2014/05/28 PHP
PHP添加PNG图片背景透明水印操作类定义与用法示例
2019/03/12 PHP
起点页面传值js,有空研究学习下
2010/01/25 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
js仿百度有啊通栏展示效果实现代码
2013/05/28 Javascript
jQuery中$.fn的用法示例介绍
2013/11/05 Javascript
Javascript实现代码折叠功能
2016/08/25 Javascript
利用js+css+html实现固定table的列头不动
2016/12/08 Javascript
Angular在一个页面中使用两个ng-app的方法
2017/02/20 Javascript
javascript实现动态时钟的启动和停止
2020/07/29 Javascript
Echarts实现单条折线可拖拽效果
2019/12/19 Javascript
JS实现打砖块游戏
2020/02/14 Javascript
vite2.0+vue3移动端项目实战详解
2021/03/03 Vue.js
[04:44]DOTA2 2017全国高校联赛视频回顾
2017/08/21 DOTA
[01:31:22]DOTA2-DPC中国联赛定级赛 LBZS vs Magma BO3第二场 1月10日
2021/03/11 DOTA
Python多进程通信Queue、Pipe、Value、Array实例
2014/11/21 Python
Python中的推导式使用详解
2015/06/03 Python
Django使用模板后无法找到静态资源文件问题解决
2019/07/19 Python
Python3 io文本及原始流I/O工具用法详解
2020/03/23 Python
Django和Ueditor自定义存储上传文件的文件名
2021/02/25 Python
海信商城:海信电视、科龙空调、容声冰箱官方专卖
2017/02/07 全球购物
美国最大的网络男装服装品牌:Bonobos
2017/05/25 全球购物
俄罗斯在线水暖商店:Perfecto.ru
2019/10/25 全球购物
实习自我评价怎么写
2013/12/02 职场文书
计算机专业职业生涯规划范文
2014/01/19 职场文书
运动会邀请函范文
2014/02/06 职场文书
房屋公证委托书
2014/04/03 职场文书
劳动竞赛口号
2014/06/16 职场文书
2014年宣传工作总结
2014/11/18 职场文书
2014年体育教师工作总结
2014/12/03 职场文书
党员自我评价范文2015
2015/03/03 职场文书
因公司原因离职的辞职信范文
2015/05/12 职场文书
FP-growth算法发现频繁项集——构建FP树
2021/06/24 Python
SpringBoot前端后端分离之Nginx服务器下载安装过程
2022/08/14 Servers