void MainWindow::on_pushButton_clicked()
{
qDebug()<<"断开Comeon信号与ComeonGuys槽的连接";
//disconnect(this,SIGNAL(Comeon(QString&)),this,SLOT(ComeonGuys(QString&)));
disconnect(m_res);
//QMetaObject::Connection m_res =
//connect(this,SIGNAL(Comeon(QString&)),this,SLOT(ComeonGuys(QString&)));
//连接的
//QMetaObject::Connection m_res要在头文件声明
}
在Qt中,断开一个信号与一个槽通常意味着解除它们之间的连接。当你想要让一个信号不再触发一个槽函数时,你需要断开这两个之间的连接。这可以通过几种方法实现:
使用
QObject::disconnect()
函数:
- 这是最直接的方法。你可以为特定的信号和槽调用
disconnect()
方法。- 示例:
QObject::disconnect(sender, SIGNAL(signalName()), receiver, SLOT(slotName()));
使用lambda表达式:
在C++11及更高版本中,你可以使用lambda表达式来更明确地指定要断开的信号和槽。