一.简介
QT编程中信号与槽用于处理界面各个组件的交互,类似与MFC的消息循环和绑定
注意:在使用信号与槽的类中,必须在类的定义中加入宏定义Q_OBJECT
信号(Signal)就是在特定情况下被发射的时间,类似于鼠标单击时发生clicked()信号
槽(Slot)是对信号响应的函数
二.ui文件设计信号与槽
在需要设计槽的控件(触发控件)上右键->转到槽
选择相应的信号之后就会跳转到该信号函数
//helloDialog.h class HelloDialog : public QMainWindow { private slots: void on_pushButton_clicked(); }
扫描二维码关注公众号,回复:
6610587 查看本文章
//helloDialog.cpp void HelloDialog::on_pushButton_clicked() { ui->lineEdit->setText("k5"); }
三.自定义信号与槽
如果不在.ui文件里面直接绑定,就必须用connect()进行绑定
//helloDialog.h class HelloDialog{ public: void initSignalSlots(); //初始化信号与槽连接 private: void changeData(); }
//helloDialog.cpp void HelloDialog::initSignalSlots() { connect(ui->pushButton,SIGNAL(cliked()),this,SLOT(changeData)); } void HelloDialog::changeData(){ ui->lineEdit->setText("k5"); }