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 相关文章推荐
视觉直观感受若干常用排序算法
Apr 13 Python
Python中文分词工具之结巴分词用法实例总结【经典案例】
Apr 15 Python
python在每个字符后添加空格的实例
May 07 Python
Python中字符串List按照长度排序
Jul 01 Python
python修改字典键(key)的方法
Aug 05 Python
Python pip配置国内源的方法
Feb 14 Python
python 链接sqlserver 写接口实例
Mar 11 Python
keras 多任务多loss实例
Jun 22 Python
Pycharm自动添加文件头注释和函数注释参数的方法
Oct 23 Python
Python爬虫之Selenium中frame/iframe表单嵌套页面
Dec 04 Python
python上下文管理的使用场景实例讲解
Mar 03 Python
对象析构函数__del__在Python中何时使用
Mar 22 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
用Php编写注册后Email激活验证的实例代码
2013/03/11 PHP
基于Zookeeper的使用详解
2013/05/02 PHP
php检测网页是否被百度收录的函数代码
2013/10/09 PHP
PHP实现的注册,登录及查询用户资料功能API接口示例
2017/06/06 PHP
PHP的简单跳转提示的实现详解
2019/03/14 PHP
随机显示经典句子或诗歌的javascript脚本
2007/08/04 Javascript
解读IE和firefox下JScript和HREF的执行顺序
2008/01/12 Javascript
js href的用法
2010/05/13 Javascript
window.location.hash 使用说明
2010/11/08 Javascript
JQuery操作tr和td内容的方法实例
2013/03/06 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
js闭包实例汇总
2014/11/09 Javascript
js实现仿微博滚动显示信息的效果
2015/12/21 Javascript
javascript匀速运动实现方法分析
2016/01/08 Javascript
AngularJS 自定义过滤器详解及实例代码
2016/09/14 Javascript
js判断PC端与移动端跳转
2020/12/24 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
对vue中的事件穿透与禁止穿透实例详解
2019/10/28 Javascript
[51:20]完美世界DOTA2联赛PWL S2 Magma vs PXG 第一场 11.28
2020/12/01 DOTA
python实现猜数字游戏(无重复数字)示例分享
2014/03/29 Python
python图像处理之反色实现方法
2015/05/30 Python
python+opencv实现动态物体追踪
2018/01/09 Python
聊聊Python中的pypy
2018/01/12 Python
Python unittest单元测试框架总结
2018/09/08 Python
Python 进程之间共享数据(全局变量)的方法
2019/07/16 Python
Pytorch 的损失函数Loss function使用详解
2020/01/02 Python
解决python脚本中error: unrecognized arguments: True错误
2020/04/20 Python
HTML5 画布canvas使用方法
2016/03/18 HTML / CSS
安德玛加拿大官网:Under Armour加拿大
2019/10/02 全球购物
文员自我评价怎么写
2013/09/19 职场文书
小区门卫工作职责
2013/12/14 职场文书
汽车维修专业个人求职信范文
2014/01/01 职场文书
幼儿园优秀教师事迹
2014/02/13 职场文书
学校消防演习方案
2014/02/19 职场文书
如何制定销售人员薪酬制度?
2019/07/09 职场文书
PHP新手指南
2021/04/01 PHP