QObject¶
Qt 框架中所有对象的基类,提供了QT开发框架中核心功能。
1 信号槽¶
QObject 支持 Qt 中强大的信号与槽机制,使得对象之间的通信更加灵活。一个对象可以发射信号,而其他对象可以连接到这些信号并执行相应的槽函数。
blockSignals
断开链接
connectNotify
监听链接
disconnectNotify
监听断开链接
2 对象树¶
QObject 支持以树形结构管理对象,每个 QObject 可能有一个父对象,并且可以有零个或多个子对象。这种父子关系有助于在应用程序中组织对象,同时也方便了对象的内存管理。
3 动态属性系统¶
QObject 提供了属性系统,允许对象定义和管理属性。属性可以用于存储对象的状态信息,并且可以与信号和槽一起使用,以实现属性值的自动更新和通知。
4 事件处理¶
QObject 支持事件处理,对象可以重写事件处理函数来处理特定类型的事件,如键盘事件、鼠标事件等。
5 元对象系统¶
元对象系统(Meta-Object System):QObject 使用元对象系统来实现信号与槽、属性系统等功能,元对象系统是 Qt 中的一个重要特性,提供了在运行时进行对象反射和元信息访问的功能。
6 线程安全¶
7 对象名管理¶
objectName
默认为空,不唯一。
7.1 对象查找¶
findChild、findChildren
7.2 样式表设置¶
7.3 调试和日志¶
7.4 对象通讯¶
8 内存管理¶
内存管理:QObject 提供了内存管理功能,包括对象的自动销毁和父子关系的管理,从而简化了对象的生命周期管理。