//参数说明
connect( 发射信号对象指针 , SIGNAL(发射信号的控件名(信号函数参数) , 接收信号对象指针,SLOT(接收信号控件名(信号参数))
例如: connect(findLine,SIGNAL(textChanged(QString)),this,SLOT(findFile(const QString &)));
一个信号可以连多槽
例如:
connect(slider, SIGNAL(valueChanged(int)),spinBox, SLOT(setValue(int)));
connect(slider, SIGNAL(valueChanged(int)), this, SLOT(updateStatusBarIndicator(int)));
slider即滑动控件当他的值变化时,valueChanged(int),发出的信号被两个槽接受spinBox ,this(当前类)。
信号和信号,槽和槽,槽和信号,他们之间是可以相互响应的。其实信号与槽的信息交换都是以函数实现的。connect()函数其实是在QObject中实现的,并不局限于GUI,只要我们继承了QOject类,就可以应用信号槽机制。
例如:
class Employee : public QObject
{
Q_OBJECT
public:
Employee() { mySalary = 0; }
int salary() const { return mySalary; }
public