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中assert用法实例分析
Apr 30 Python
Python中pip安装非PyPI官网第三方库的方法
Jun 02 Python
python执行使用shell命令方法分享
Nov 08 Python
tensorflow学习笔记之简单的神经网络训练和测试
Apr 15 Python
Python 使用多属性来进行排序
Sep 01 Python
使用Python画出小人发射爱心的代码
Nov 23 Python
python的json中方法及jsonpath模块用法分析
Dec 06 Python
Jupyter notebook无法导入第三方模块的解决方式
Apr 15 Python
浅谈django不使用restframework自定义接口与使用的区别
Jul 15 Python
详解python中的异常捕获
Dec 15 Python
python基础学习之递归函数知识总结
May 26 Python
C3 线性化算法与 MRO之Python中的多继承
Oct 05 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初学者头疼问题总结
2006/10/09 PHP
如何隐藏你的.php文件
2007/01/04 PHP
CodeIgniter基本配置详细介绍
2013/11/12 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
分享3个php获取日历的函数
2015/09/25 PHP
Yii使用技巧大汇总
2015/12/29 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
php curl发送请求实例方法
2019/08/01 PHP
Yii框架参数配置文件params用法实例分析
2019/09/11 PHP
Jquery Select操作方法集合脚本之家特别版
2010/05/17 Javascript
给页面渲染时间加速 干掉Dom Level 0 Event
2012/12/19 Javascript
js捕获鼠标滚轮事件代码
2013/12/16 Javascript
nodejs文件操作模块FS(File System)常用函数简明总结
2014/06/05 NodeJs
js封装可使用的构造函数继承用法分析
2015/01/28 Javascript
js实现按钮控制图片360度翻转特效的方法
2015/02/17 Javascript
jQuery  ready方法实现原理详解
2016/10/19 Javascript
详解angular中通过$location获取路径(参数)的写法
2017/03/21 Javascript
最适应的vue.js的form提交涉及多种插件【推荐】
2018/08/27 Javascript
vscode下的vue文件格式化问题
2018/11/28 Javascript
JavaScript判断浏览器运行环境的详细方法
2019/06/30 Javascript
详解vue+axios给开发环境和生产环境配置不同的接口地址
2019/08/16 Javascript
用python读写excel的方法
2014/11/18 Python
Python Pandas找到缺失值的位置方法
2018/04/12 Python
Python 加密与解密小结
2018/12/06 Python
python实现画五角星和螺旋线的示例
2019/01/20 Python
Python爬虫实现爬取百度百科词条功能实例
2019/04/05 Python
python ctypes库2_指定参数类型和返回类型详解
2019/11/19 Python
Python Django form 组件动态从数据库取choices数据实例
2020/05/19 Python
css3动画事件—webkitAnimationEnd与计时器time事件
2013/01/31 HTML / CSS
用HTML5实现手机摇一摇的功能的教程
2012/10/30 HTML / CSS
阿拉伯世界最大的电子商务网站:Souq沙特阿拉伯
2016/10/28 全球购物
大学运动会通讯稿
2014/01/28 职场文书
艺术教育实施方案
2014/05/03 职场文书
公司授权委托书格式样本
2014/10/01 职场文书
Redisson实现Redis分布式锁的几种方式
2021/08/07 Redis
在项目中使用redis做缓存的一些思路
2021/09/14 Redis