一、GUI编程简介:
二、PyQt5基础介绍:
所有模块及类别官方介绍:https://www.riverbankcomputing.com/static/Docs/PyQt5/module_index.html
2.1 PyQt5基本操作
2.2 利用pycharm设置pyqt5活动模板
1) 将要设为模板的代码拷贝下来:
2) 点击file–>settings:
3)进入settings,搜索live,并如下操作选择:
4)输入你想要的名字以及描述:
5)将刚刚拷贝的代码复制到下方的Iemplate text中:
实现光标快速定位:
① 在窗体标题的window.setWindowTitle(’’)中添加$TITLE$
② 在设置完控件后,需要完成其他设置(如设置控件的大小、位置、样式、添加子控件、添加信号、事件等)的代码,在该位置输入$CODE$
6)点击下方的Define,并选择应用在Python环境:
完成后点击Apply,再点击OK即可完成活动模板创建。
7)此时可以新建一个python文件,输入刚刚设置的模板名,比如我这里是pyqtt,输入后会出现下图的提示,然后回车:
就可以看到是我们刚刚拷贝的代码,并且光标自动定位到刚刚的$TITLE$
处:
2.3 将面向过程的代码改为面向对象的代码:
1)调用init
方法
运行结果如下:
2)为了代码逻辑的清晰可读,这些子控件还可以单独抽离出来:
3)如果该程序是直接被右键/run执行到的话,就运行以下代码;如果该文件是被导入的就不会运行以下代码。
将该文件存为import_test.py,那么我们在新的python文件中导入这个test类,运行结果如下:
2.4 通过调用类对象的 mro()
方法获取其继承关系
如图可以查询到QObject与python自带的object的继承关系:
2.5 修改对象名称及属性
PS:常用控件显示效果
1)按钮
① QPushButton:按钮,可单击、双击、右键等
② QCommandLinkButton:类似按钮,可以添加详情
③ QRadioButton:单选按钮,只能选择一个
④ QCheckBox:复选框,可选多个
2)输入控件:
① 纯键盘输入:
QLineEdit:一个单行输入框,可应用于输入用户名、密码、邮箱等场景
QTextEdit:多行输入控件,可插入图片、文本、超链接等
QPlainTextEdit:普通多行文本控件,只能输入文本
② 步长调节(QAbstractSpinBox)(键盘+鼠标)
QDateTimeEdit:调节日期时间,其中还可分为两个部分:QDateEdit、QTimeEdit
QSpinBox:数字步长调节(整型数据)
QDoubleSpinBox:浮点型数据
③ 组合框(下拉选择输入)
(常用)QComboBox:
def setup(self):
text = QLabel(self)
text.setText('什么时候放假?')
text.move(105, 20)
label = QComboBox(self)
label.addItem('今天')
label.addItem('明天')
label.addItem('后天')
label.move(120, 60)
④ 滑块(QAbstractSlider)(鼠标)
⑤ 橡皮筋选中
⑥ 对话框(QDialog)
QColorDialog:选择颜色
QFileDialog:选择文件
QMessageBox
QErrorMessage
QProgressDialog
⑦ 日期
QCalendarWidget
3)展示控件
QLabel:可设置普通文本、数字、富文本、图片、QLabel-动画等
QLCDNumber
QProgressBar:进度条