QWidget简介
- QWidget是所有的可视控件的基类
- 描述
- 所有的可视控件的基类
- 是一个最简单的空白控件
- 控件是用户界面的最小元素
- 接收各种事件(鼠标事件,键盘事件)
- 绘制在桌面上,展示给用户看
- 每个控件都是矩形的,它们按Z轴顺序排序
- 控件由其父控件和前面的控件剪切
- 没有父控件的控件, 称之为窗口
- 一般会被包装成一个框架(标题栏...)
- 可以通过某些设置进行更改
QWidget继承
- 查看父类的方法
- 在PyCharm中,按住Ctrl键然后用鼠标点击QWidget,就会进入到QWidget类中,就可以看到QWidget是继承自QObject和QPaintDevice(绘制类)
- 通过对象的
__bases__
属性查看其直接父类(QWidget.__bases__
) - 通过对象的mro()方法,但是这个获取到的是对象的祖辈类(父类、爷爷类....)
- 在PyCharm中,按住Ctrl键然后用鼠标点击QWidget,就会进入到QWidget类中,就可以看到QWidget是继承自QObject和QPaintDevice(绘制类)
- 继承的特性
- 资源继承,子类会继承父类的所有资源
控件创建
-
控件的创建
from PyQt5.Qt import *
import sysapp = QApplication(sys.argv) # 创建一个QWidget控件 w = QWidget() # 没有父对象的控件是顶层控件(窗口) # 顶层控件不会自动显示,需要通过show方法来显示 w.show() sys.exit(app.exec_())
-
通过
QWidget()
来创建时,就会立即执行QWidget对象的__init()__
方法,并且将QWidget()
括号中的参数传递给__init()__
方法
init(self, parent=None, flags)
参数说明
parent:父控件
flags:标志位(对窗口的一些设置,如最大最小化是否显示、可用等。后面会具体讲)