前言:
开篇里介绍的知识需要我们去少量的实操,不一定要记住,但一定对PyQt的要有一个初步的认识:环境配置、简单实现(必要结构)、学习方法、控件及其关系和特性
环境配置
需要安装第三方依赖:pip install -i https://pypi.douban.com/simple/ PyQt5
简单GUI实现
from PyQt.Qt import *
import sys
app = QApplication(sys.argv)
window = QWidget()
label = QLabel(window)
label.setText('hello')
window.show()
sys.exit(app.exec_())
对象递深关系:
QObject --> QWidget --> 其他控件 --> 相关子控件
这里补充一下查看父类子类的方法:
__subclasses__():获取类的子类,返回list类型
mro():纵向深度获取当前类的父类,返回list类型
当然也可以Ctrl + 鼠标点击查看类的继承(父类)
举例:print(QWidget.mro())
学习方法:
纵向深度学习法,根据对象的继承关系来深入学习控件
控件
QObject是控件的基类不是可视化控件,QWidget是控件的基类。 可视化控件是用户界面的最小元素。 没有父类的控件是独立的窗口,控件之间通过继承来实现窗口子控件,从而来布置完整的用户界面。
控件分类:
按钮控件、输入控件、展示控件、容器控件、结构控件、滚动控件、辅助控件、其他
1. 按钮控件:QPushButton、QCommandLinkButton、QRadioButton、QCheckButton 2. 输入控件: 纯键盘输入:QlineEdit(单行输入框)、QTextEdit(多行富文本框)、QPlainTextEdit(多行仅文本框)、 QKeySequenceEdit(按键采集) 步长调节(键盘或鼠标):QDateTimeEdit、QDateEdit、QTimeEdit、QSpinBox、QDoubleSpinBox 组合框:QComboBox、QFontComboBox 滑块:QDial(表盘型)、QSlider(滑块)、QScrollbar(滚动条) 橡皮筋选中:QRubberBrand 对话框:QColorDialog、QFileDialog、QFontDialog、QInputDialog 日期:QCalendarWidget 3. 展示控件: 标签:QLabel 数字显示:QLCDNumber 进度条:QProgressBar 提示对话框:QMessageBox、QErrorMessage、QProgressDialog、 4. 容器控件:QToolBox、QDialogButtonBox、QGroupBox、QMdiSubWindow 5. 结构控件: QMainWindow、QMenuBar、QMenu、QToolBar、QToolButton、QStatusBar QTagWidget、QTagBar、QStackedWidget、QSplitter、QDockWidget 6. 滚动控件: QAbstractScrollArea、QTextBrowser、QScrollArea、 QAbstractItemView、QColumnView、QHeaderView、QListView、QListWidget、QUndoView、QTableView、QTableWidget、QTreeView、QTreeWidget QMdiarea、QGraphicsView 7. 辅助控件: QFocusFrame QSizeGrip QDesktopWidget 8. 其他: 向导/打印:QWizard、QWizardPage、QAbstractPrintDialog、QPrintPreviewDialog、QPageSetupDailog、、 欢迎界面:QSplashScreen、QSpalshScreen 功能性控件:QVideoWidget、QCameraViewFinder、QWebEngineView
控件特性
共有的:名称、矩形区域、位置、大小、样式 差异的:展示内容、接受输入、用户交互等
这是学习PyQt5开篇需要了解的一些知识,后面会详细再深入,我会持续更新PyQt5学习的完整知识。
来Joden学python,欢迎大家提出意见建议!!!