IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python QT5 1- 启动PyQt5 -> 正文阅读

[Python知识库]Python QT5 1- 启动PyQt5

1. 配置Python环境

? ? 1)下载Python,Welcome to Python.orgDownload Python | Python.orgWelcome to Python.org
? ? 2)下载Windows版本 Windows installer(64-bit),python-3.X.X.exe
? ? ? ? ? Download Python | Python.org? ?
? ? 3)安装Python,双击python安装程序,按提示执行安装
? ? 4)安装结果验证

python -V  # Python 3.9.1
或
python     # Python 3.9.1

2. 安装PyQt5

? ? 使用pip安装PyQt5及相关插件

# 安装 PyQt5
pip install PyQt5

# 验证 pyqt5 安装结果
>>> import PyQt5    # 导入PyQt5成功

# 安装 pyqt5 设计工具 designer
pip install pyqt5-tools

# 验证 pyqt5-tools 安装结果
python_path\Lib\site-packages\qt5_applications\Qt\bin\designer.exe #双击后启动Qt Designer

3. 配置PyCharm集成开发环境(IDE)

? ? * 完全可以使用Python IDLE环境,使用PyCharm只是之前配置好的环境,并且希望使用下external tools,外部工具配置

? ? 1)PyCharm安装(参考官方文档,PyCharm中文网JetBrains: Essential tools for software developers and teams?官网官网,似乎访问不到)
? ? 2)配置external tools
? ? ? ? ?> File -> Settings
? ? ? ? ?>?配置 external tools

? ? ? ? ?> 配置 Qt Designer ( + ),执行Qt Designer进行GUI设计
? ? ? ? ? ? - 设置 Name?和 Program?执行程序
? ? ? ? ? ? - $FileDir$,在当前文件夹下生成 *.ui 文件

? ? ? ? ?> 配置 pyuic5?( + ),将 Qt Designer生成的*.ui文件转成*.py文件
? ? ? ? ? ? -?设置 Name?和 Program?执行程序(pyuic5.ext 位于python目录的scripts文件夹下)
? ? ? ? ? ? -?设置 Parameters参数,参考pyuic5执行:?pyuic5 *.ui -o *.py, *代表对应的文件名
? ? ? ? ? ? ? 默认新的Qt Designer会引用 PySide2?库,因此直接使用pyuic5转换*.ui只能引用PySider2库,因此使用-o参数可以引用PyQt5库。

???? ? ? ? ?>?配置 Python?( + ),执行python程序
? ? ? ? ? ? ? 参考?python *.py?执行过程
? ? ? ? ? ? ? ?- 设置 Name?和 Program?执行程序
? ? ? ? ? ? ? ?-?设置 Parameters参数,指定当前运行的文件 $FileName$,即*.py
? ? ? ? ? ? ? ?-?设置当前程序执行的文件夹,$FileDir$

?4. 使用Qt Designer设计用户界面(详细参考相关帮助,)

? ? 有GUI设计?或?可视化快速开发语言经验的,可略过。了解一些Qt? Designer的基本特性

? ? 1)信号 和 槽(Singnal and Slot)??
? ? ? ? ?> 信号和槽用于对象之间的通信,所有的应用都是事件驱动的,设用exec_()方法。
? ? ? ? ? ? 基于对象1的操作影响对象2:对像1发送信号,对像2响应信号称为槽;发送 -?信号 <-> 响应 -?槽
? ? ? ? ?>?事件模型
? ? ? ? ? ??事件源:发生了状态改变的对像
? ? ? ? ? ??事件:改变的内容,用来描述一系列事件自身属性的对象,发生一个signal
? ? ? ? ? ? 事件目标:事件想作用的目标,事件触发时调用slot
? ? ? ? ?>?singal?信号,sender?信号的发送者,receiver?信号的接收者,slot?信号发出后应做出的反应

## import
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QApplication,QMessageBox,QDialog

## Window UI design
-----------------------------------------------------------------
self.pushButton = QtWidgets.QPushButton(Dialog)
self.pushButton.setGeometry(QtCore.QRect(170, 120, 75, 23))
self.pushButton.setObjectName("pushButton")

self.pushButton.clicked.connect(self.showok)

def showok(self):
    QMessageBox.information(self, 'Info',  'OK!!!')

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
        self.buttonBox.setStandardButtons(QtWidgets.QDialogButtonBox.Cancel|QtWidgets.QDialogButtonBox.Ok)
self.buttonBox.setObjectName("buttonBox")
self.buttonBox.accepted.connect(Dialog.accept)

def accept(self):
    QMessageBox.information(self, 'Info',  'accepted!!!')

## Show Window
-----------------------------------------------------------------
class MyWindow(QDialog, Ui_Dialog):
    def __init__(self, parent=None):
        super(MyWindow, self).__init__(parent)
        self.setupUi(self)

if __name__ == '__main__':
    app = QApplication(sys.argv)
    myWin = MyWindow()
    myWin.show()
    sys.exit(app.exec_()) 

? ? 2)Layout?布局
? ? ? ? ?> Vertical Layout,竖向排列
? ? ? ? ?> Horizontal Layout,横向排列
? ? ? ? ?> Grid Layout,网格布局,多行多列
? ? ? ? ?> Form Layout,表单布局,多行2列

? ? ? ? ?布局创建步骤
? ? ? ? ?>?创建组件(widget)
? ? ? ? ?>?创建布局(layout),并将部件依次添加到布局中 --?选择要布局的组件,然后选择合适的布局


  1. Getting started with PyQt --?Getting started with PyQt (learning the basics) - CodersLegacy
  2. PyQt5中文教程
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 22:28:05  更:2022-03-15 22:30:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/29 13:43:03-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计