实现对象与对象之间的通行,当一个对象发生了改变会发送一各信号通知另一个对象通知另一个对象执行一个函数,这个函数被成为槽。
信号的声明:信号的声明在头文件中,Qt的signal关键字指出进入了信号声明区,随后即可声明自己的信号。
signals:
void mySignalA();
void mySignalB(int x);
void mySugnalC(QStirng text);
void mySignalD(int a, QString b);
槽的声明:只在头文件中进行,Qt的slot关键字指出进入了槽函数,随后即可声明自己的槽。如果只声明不实现槽函数,则会出现编译错误。
信号调用:当与槽函数关联的信号被发送时,槽函数就会被调用。普通调用:通过函数名或函数指正调用。
信号与槽的连接方式:手动连接,自动连接。
连接规则:
1、信号参数可以比槽多,反之不可以
2、信号与槽的关系可以一对一,一对多,多对一
3、信号也可以与信号连接
4、连接可以被删除
5、同一个连接可以绑定多次,触发一次信号会执行多次槽函数。