Python个人学习笔记 PyQt5——窗口
常用属性
资源浏览器
窗口样式
信号与槽
关联多窗口

常用属性
属性可通过Qt Designer中的属性编辑器或Python代码来修改。
在Qt Designer设置好后代码会自动生成的,没必要背。导出后的微调用代码比较方便。
objectName
窗口的唯一标识,程序通过该属性调用窗口。

geometry
宽高。

windowTitle
窗口标题。

windowIcon
窗口图标。
▲自动生成的ico图标路径是绝对路径。要在不同机子上都能识别需要相对路径。

palette
字体、控件等颜色。
styleSheet
自定义控件的外观和样式等。
▲需要使用CSS语法。

如果用QPalette同时设置背景色和背景图,会被后面一方完全覆盖。
styleSheet的优先级比QPalette高。用styleSheet设置背景图,QPalette设置背景色可以实现共存。

windowOpacity
透明度。取值范围[0,1]。

资源浏览器
Qt Designer不能直接浏览并选择本地图片等文件,需要先将文件导入资源浏览器后才能浏览到图片。或者像上面那样手动添加文件路径才能插入图片。
导入资源浏览器后更插入文件更方便。
① 资源浏览器→编辑资源

② 新建资源文件
相当于建一个文件夹,把需要插入的文件资源放里面。

命名并保存,格式为.qrc。

有.qrc资源文件的可以直接打开加载。

③ 添加前缀
选中资源文件(.qrc),添加前缀。相当于新建子文件夹,可用于资源整理分类。

④ 添加文件
选中前缀,添加文件。


⑤ 插入资源浏览器中的图片

会自动生成代码。图片路径为相对路径。

⑥ .qrc→.py
插入资源浏览器中的图片导出代码后,会有一行 import images_rc ,且运行会报错。
需要将.qrc文件转化为.py文件。


窗口样式
无法直接在Qt Designer中修改,需要通过代码更改样式。
在创建窗口对象的代码处(setupUi)添加窗口标志。
基本窗口类型
窗口标志与对应的样式:

顶层窗口外观
窗口标志与对应的样式:

Excel链接:

信号与槽
用于实现各个对象(窗口、控件等)之间的关联。
信号与槽可以是多对多的关系。
例如:
实现单击按钮(pushButton)关闭窗口。
方法①:
在信号/槽编辑器中配置连接。

方法②:
⒈开启编辑信号/槽模式。

⒉按住控件并拖至空区(空区表示窗口)。

⒊配置连接。

编辑完后保存并转换为.py文件。
自定义槽函数
例如:实现加法运算。
① 在类中自定义槽函数
② 连接信号与槽函数
不一定非得加在主函数中,也可以在类中实现,只要在连接前完成了自定义函数就行了。


关联多窗口
① 需要被关联的窗口py文件中,将Ui_MainWindow类的父类换为QtWidgets.QMainWindow。(原为object)
② 在原窗口中通过信号与槽函数关联窗口。
