QT5之信号与槽

注意:类中一定要添加Q_OBJECT声明,如果忘了添加导致编译错误。

解决方法:将文件移除项目,再重新添加即可重新生成moc


第一步:声明信号与槽

 
  
private slots:
    void mainslot(QString); 
    void on_pushButton_clicked();
signals:
     void mainsignal(QString);


 
  

第二步:connect 信号与槽

 
  
 connect(this,SIGNAL(mainsignal(QString)),this,SLOT(mainslot(QString)));


第三步:信号与槽的实现

1、发射信号

 
  
void MainWindow::on_pushButton_clicked()
{
  emit this->mainsignal("hello world");
}
 
  

2、槽

 
  
void MainWindow::mainslot(QString context)
{
    this->setWindowTitle(context);
}


第四步:结果实现


 如图所示,通过点击按键,设置窗口名称

QT5之信号与槽_第1张图片

你可能感兴趣的:(Qt学习笔记)