PyQt编程快速上手:PythonGUI开发从入门到实践

PyQt编程快速上手:PythonGUI开发从入门到实践

立即阅读
手机扫码
  • 微信扫一扫

    关注微信公众号

编辑推荐

PyQt实用工具书,帮助读者快速上手功能强大的开发工具,轻松掌握GUI开发技巧,创建各式各样的桌面程序。

内容简介

PyQt是一个创建GUI应用程序的工具包,是Python编程语言和Qt库的成功融合。本书旨在通过深入浅出的讲解和简明的程序示例教读者掌握PyQt的开发技巧。本书分为10章,从PyQt的安装和基础知识讲起,陆续介绍了基础控件(如标签控件、消息框、文本框、按钮及控件等)、高级控件(如组合框、滚动条、容器控件及各类视图等)、窗口(如属性、坐标、事件等)、Qt Designer(如安装与配置、编辑模式等)、PyQt高级应用(如数据库、多线程、动画、音视频、网页交互等)、图形视图框架(如图元、场景、视图、事件传递等)、打包(如PyInstaller、Nuitka等)等内容。此外,本书还通过两个开发实例(可视化爬虫软件和《经典贪吃蛇》游戏)带领读者巩固了书中介绍的相关知识点。本书内容简洁实用、实操性强,适合对Python编程及GUI开发感兴趣的读者阅读。

作者简介

作者任路顺,一名热爱代码的开源开发者,也是开源软件 Qt Box的作者。他拥有多年Python/C开发经验,专注于软件开发,也喜欢研究爬虫、机器学习等技术,业余时间喜欢开发一些小游戏。

章节目录

版权信息

内容提要

前言

服务与支持

第1章 PyQt基础知识

1.1 安装PyQt

1.1.1 在不同系统上安装

1.1.2 验证安装是否成功

1.2 设计一个简单的PyQt窗口

1.2.1 程序入口

1.2.2 在PyQt程序中嵌入HTML代码

1.2.3 在类中创建窗口

1.3 布局管理

1.3.1 使用move()方法布局

1.3.2 垂直布局管理器QVBoxLayout

1.3.3 水平布局管理器QHBoxLayout

1.3.4 表单布局管理器QFormLayout

1.3.5 网格布局管理器QGridLayout

1.3.6 布局嵌套

1.4 信号和槽

1.4.1 理解信号和槽机制

1.4.2 一个信号连接一个槽

1.4.3 一个信号连接多个槽

1.4.4 多个信号连接一个槽

1.4.5 信号与信号连接

1.4.6 自定义信号

1.5 学会使用文档

1.5.1 理解文档上的C++代码

1.5.2 如何使用文档

1.6 本章小结

第2章 PyQt的基础控件

2.1 标签控件QLabel

2.1.1 显示文本

2.1.2 显示图片

2.1.3 显示动图

2.2 消息框控件QMessageBox

2.2.1 各种类型的消息框

2.2.2 与消息框交互

2.2.3 编写带中文按钮的消息框

2.3 文本框控件

2.3.1 单行文本框控件QLineEdit

2.3.2 文本编辑框控件QTextEdit

2.3.3 文本浏览框控件QTextBrowser

2.4 各种按钮控件

2.4.1 普通按钮控件QPushButton

2.4.2 工具按钮控件QToolButton

2.4.3 单选框按钮控件QRadioButton

2.4.4 复选框按钮控件QCheckBox

2.4.5 下拉框按钮控件QComboBox

2.5 与数字相关的控件

2.5.1 液晶数字控件QLCDNumber

2.5.2 数字调节框控件QSpinBox和QDoubleSpinBox

2.5.3 滑动条控件QSlider

2.5.4 仪表盘控件QDial

2.6 与日期相关的控件

2.6.1 日历控件QCalendarWidget

2.6.2 日期时间控件QDateTimeEdit

2.7 定时器控件和进度条控件

2.7.1 定时器控件QTimer

2.7.2 进度条控件QProgressBar

2.8 本章小结

第3章 PyQt的高级控件

3.1 组合框控件和工具箱控件

3.1.1 分组框控件QGroupBox

3.1.2 工具箱控件QToolBox

3.2 滚动区域控件和滚动条控件

3.2.1 滚动区域控件QScrollArea

3.2.2 滚动条控件QScrollBar

3.3 更多容器控件

3.3.1 拆分窗口控件QSplitter

3.3.2 标签页控件QTabWidget

3.3.3 堆栈控件QStackedWidget

3.3.4 多文档区域控件QMdiArea

3.4 列表视图控件、树形视图控件、表格视图控件

3.4.1 列表视图控件QListView

3.4.2 树形视图控件QTreeView

3.4.3 表格视图控件QTableView

3.5 简化版的列表、树形、表格视图控件

3.5.1 简化版列表视图控件QListWidget

3.5.2 简化版树形视图控件QTreeWidget

3.5.3 简化版表格视图控件QTableWidget

3.6 各种对话框控件

3.6.1 颜色对话框控件QColorDialog

3.6.2 字体对话框控件QFontDialog

3.6.3 输入对话框控件QInputDialog

3.6.4 文件对话框控件QFileDialog

3.7 本章小结

第4章 深入窗口

4.1 窗口属性

4.1.1 窗口标题和图标

4.1.2 窗口大小和位置

4.1.3 其他窗口属性

4.2 窗口坐标

4.2.1 理解坐标体系

4.2.2 窗口的组成部分

4.3 窗口事件

4.3.1 窗口关闭事件

4.3.2 窗口大小调整事件

4.3.3 键盘事件

4.3.4 鼠标事件

4.3.5 拖放事件

4.3.6 绘制事件

4.4 主窗口类QMainWindow

4.4.1 主窗口的组成部分

4.4.2 停靠窗口类QDockWidget

4.4.3 菜单栏类QMenuBar

4.4.4 工具栏类QToolBar

4.4.5 状态栏类QStatusBar

4.4.6 程序启动画面类QSplashScreen

4.5 本章小结

第5章 Qt Designer

5.1 安装与配置

5.1.1 在Windows系统上安装

5.1.2 在macOS系统上安装

5.1.3 在Ubuntu系统上安装

5.1.4 在PyCharm中配置设计师

5.2 了解设计师窗口中的各个部分

5.2.1 控件箱

5.2.2 对象查看器

5.2.3 属性编辑器

5.2.4 菜单栏和工具栏

5.3 4种编辑模式

5.3.1 布局模式

5.3.2 编辑信号和槽模式

5.3.3 编辑伙伴关系模式

5.3.4 编辑Tab顺序模式

5.4 登录框开发实战

5.4.1 编辑属性

5.4.2 布局控件

5.4.3 将.ui文件转换成.py文件

5.4.4 编写功能逻辑代码

5.5 本章小结

第6章 PyQt高级应用

6.1 数据库

6.1.1 数据库连接和关闭

6.1.2 执行SQL语句

6.1.3 数据库模型

6.2 多线程

6.2.1 使用QThread线程类

6.2.2 在线程中获取窗口数据信息

6.2.3 编写一个简单的爬虫程序

6.3 绘图与打印

6.3.1 画笔类QPen

6.3.2 画刷类QBrush

6.3.3 用鼠标在窗口上绘制矩形

6.3.4 打印

6.4 动画

6.4.1 属性动画类QPropertyAnimation

6.4.2 串行动画组类QSequentialAnimationGroup

6.4.3 并行动画组类QParallelAnimationGroup

6.4.4 时间轴类QTimeLine

6.5 音频和视频

6.5.1 声音类QSound

6.5.2 音效类QSoundEffect

6.5.3 媒体播放机类QMediaPlayer

6.6 网页交互

6.6.1 了解QWebEngineView

6.6.2 制作一款简单的浏览器

6.7 网络应用

6.7.1 QUdpSocket

6.7.2 QTcpSocket和QTcpServer

6.8 QSS

6.8.1 安装QSS高亮插件

6.8.2 基本规则

6.8.3 选择器的类型

6.8.4 子控制器

6.8.5 伪状态

6.8.6 QSS第三方库

6.9 国际化

6.9.1 使用translate()方法

6.9.2 制作.ts文件

6.9.3 使用Qt Linguist

6.9.4 实现语言切换功能

6.10 本章小结

第7章 图形视图框架

7.1 图形图元类QGraphicsItem

7.1.1 标准图元

7.1.2 图元层级

7.1.3 图元变换

7.1.4 图元分组

7.1.5 碰撞检测

7.1.6 给图元添加信号和动画

7.2 图形场景类QGraphicsScene

7.2.1 管理图元

7.2.2 嵌入控件

7.3 图形视图类QGraphicsView

7.3.1 视图和场景的大小关系

7.3.2 视图变换

7.4 事件传递与坐标转换

7.4.1 事件传递顺序

7.4.2 坐标转换

7.5 本章小结

第8章 打包

8.1 PyInstaller

8.1.1 环境配置

8.1.2 两种打包模式

8.1.3 黑框的调试作用

8.1.4 给可执行文件加上图标

8.1.5 打包资源文件

8.1.6 减小打包后的文件大小

8.1.7 其他常用的命令

8.1.8 用PyInstaller打包用PyQt开发的程序

8.2 Nuitka

8.2.1 环境配置

8.2.2 两种打包模式

8.2.3 给可执行文件加上图标

8.2.4 打包资源文件

8.2.5 启用插件

8.2.6 减小打包文件的大小

8.2.7 其他常用的命令

8.2.8 用Nuitka打包用PyQt开发的程序

8.3 本章小结

第9章 开发可视化爬虫软件

9.1 实现爬虫功能

9.1.1 分析目标网站

9.1.2 编写爬虫代码

9.2 将爬虫与界面结合

9.2.1 完成界面布局

9.2.2 编写爬虫线程

9.2.3 在界面上显示爬取数据和日志

9.2.4 实现保存功能

9.3 音效与美化

9.3.1 添加音效

9.3.2 美化界面

9.4 打包

9.4.1 用PyInstaller打包

9.4.2 用Nuitka打包

9.5 本章小结

第10章 开发《经典贪吃蛇》游戏

10.1 编写游戏场景

10.1.1 绘制背景和贪吃蛇图标

10.1.2 绘制分数

10.1.3 绘制可移动区域和边框

10.1.4 绘制“暂停”和“继续”按钮

10.1.5 绘制游戏失败提示

10.1.6 在视图窗口中显示场景

10.2 加入食物和贪吃蛇

10.2.1 在场景中添加食物

10.2.2 在场景中添加贪吃蛇

10.2.3 如何让贪吃蛇动起来

10.3 实现剩余的游戏逻辑

10.3.1 用方向键控制贪吃蛇

10.3.2 重新开始、暂停和继续

10.3.3 播放音频

10.4 打包

10.4.1 用PyInstaller打包

10.4.2 用Nuitka打包

10.5 本章小结

PyQt编程快速上手:PythonGUI开发从入门到实践是2023年由人民邮电出版社出版,作者任路顺。

得书感谢您对《PyQt编程快速上手:PythonGUI开发从入门到实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

你可能喜欢
MATLABAppDesigner从入门到实践 电子书
本书以编程工具App Designer为中心进行引导式学习。
Kubernetes从入门到实践 电子书
结合示例代码,系统讲述Kubernetes的主要功能和核心组件,有助于读者迅速提升运维技能。
Java 开发从入门到精通 电子书
本书由浅入深地详细讲解了Java的开发技术,并通过具体实例的实现过程演练了各个知识点的具体使用流程。本书共20章,第1~2章讲解了Java技术的基础知识,包括Java印象和首段Java程序;第3~9章分别讲解了Java语法、条件语句、循环语句、数组、面向对象等知识,这些内容都是Java开发技术的核心知识;第10~14章分别讲解了集合、类库、泛型、异常处理、I/O和文件处理的基本知识,这些内容是Ja
FlutterApp开发:从入门到实战 电子书
本书系统讲解使用Flutter进行跨平台开发应具备的知识,包含丰富的代码示例与效果图片,组件功能一目了然。
华为LiteOS:快速上手物联网应用开发 电子书
联网大讲堂创始人朱有鹏力作鸿蒙华为物联网操作系统,HarmonyOS时代,IoT实战入门嵌入式,从物联网基础概念入手,掌握华为LiteOS系统与应用开发。