18.13. 创建图形用户界面¶
学习大纲
GUI简介。
使用程序库创建基于GUI的应用程序。
18.13.1. GUI简介¶
Python有多种GUI框架,本节将介绍PyQt5。PyQt5具有不同的图形组件,也称为对象控件,可以在屏幕上显示并与用户交互。这些组件如下所示。
PyQt5 window :PyQt5 window用于创建简单的应用程序窗口。
PyQt5 button :PyQt5 button是一个按钮,可以随时单击,并执行对应操作。
PyQt5 textbox :PyQt5 textbox控件允许用户输入文本。
PyQt5 label :PyQt5 label控件用于显示单行文本或图像。
PyQt5 combo box :PyQt5 combo box控件包含一个组合按钮和一个弹出列表。
PyQt5 check box :PyQt5 check box控件是一个可以选中或取消选中的选项按钮。
PyQt5 radio button :PyQt5 radio button控件是一个可以选中或取消选中的选项按钮。在一组单选按钮中,一次只能选中其中一个按钮。
PyQt5 message box :PyQt5 message box控件用于显示消息。
PyQt5 menu :PyQt5 menu控件提供了不同的显示选项。
PyQt5 table :PyQt5 table控件为应用程序提供标准表显示功能,可以使用多行和多列构建。
PyQt5 signals/slots :signals让程序对已发生的事件做出反应,而slot是一个在信号发生时被调用的函数。
PyQt5 layouts :PyQt5 layouts由多个控件组成。
有许多PyQt5类可以使用,它们分别在不同的模块中。模块如下所示。
QtGui:QtGui包含事件处理、图形、字体、文本和基本图像处理类。QtWidgets:QtWidgets包含用于创建桌面式用户界面的类。QtCore:QtCore包含非GUI的核心功能的类,如时间、目录、文件、流、URL、数据类型、线程和进程等。QtBluetooth:QtBluetooth包含用于连接设备并与之交互的类。QtPositioning:QtPositioning包含用于确定位置的类。QtMultimedia:QtMultimedia包含API和多媒体内容的类。QtNetwork:QtNetwork包含用于网络编程的类。QtWebKit:QtWebkit包含用于Web浏览器实现的类。QtXml:QtXml包含XML文件类。QtSql:QtSql包含数据库类。
本章的内容在工作中目前使用不多,使用多的时候再进行扩展。