connect(发出信号的对象指针,SIGNAL(信号函数原型), 响应信号的对象, SLOT(槽函数原型));
这里先说说信号及槽与普通成员函数有什么区别,只是定义的区域不同而已.信号函数需要声明在头文件的signals:关键字后面,无需实现.而槽则需要定义在public/private slots:关键字后面,实现与正常函数一样,可以直接调用,当然调用权限与slots前面的范围控制关键字(public/private)有关.这里强调几点:
1)一个信号可以多次使用connect函数与多个槽关联,信号触发后这些槽不能保证调用顺序,但都会执行一遍.
2)多个信号可以连接同一个槽.
3)信号之间可以互相关联(语法为 connect(对象1,SIGNAL(信号函数原型), 对象2, SIGNAL(信号函数原型))),当第一个信号触发另一个信号也会触发
4)使用disconnect函数移除信号-槽的关联
5)信号与槽的参数必须顺序一致,类型相同,如果信号的参数比槽的参数多,多余的参数被忽略,反之报错.
6)信号与槽的机制不仅仅限于界面开发,普通的类也可以声明信号和槽,并建立关联
触发信号的语法为: emit 信号名称(实参列表);