1. 信号与槽的规则
- 信号必须用
signals
关键字声明。 - 槽函数可以用
slots
关键字声明,也可以是普通成员函数。 - 参数类型和顺序必须匹配。
2. QObject 和 Q_OBJECT
-
QObject
是 Qt 对象系统的基础类,提供信号与槽的支持。 -
Q_OBJECT
宏必须出现在类的开头,用于启用信号与槽机制。
3. 使用时的注意事项
- 在不同线程间通信时,需要使用
Qt::QueuedConnection
。 - 使用 Lambda 时,要确保捕获的变量在槽触发时仍然有效。