QT开发中文网

QObject::connect: signal not found in QAction QObject::connect: signal not found in QAction

在这段代码中,QObject::connect函数用于将信号与槽连接起来。然而,在你的代码中出现了错误提示:”signal not found in QAction”,意味着QAction类中没有找到对应的信号。

根据你的代码,发现在创建QAction对象时,连接信号与槽时使用了错误的语法。正确的语法是使用SIGNAL和SLOT宏来指定信号和槽函数。

例如,将以下两行代码:

connect(m_showClientsWindow, &QAction::trigger, this, &MainWindow::s_menu_Clients);
connect(m_showESP32sWindow, &QAction::trigger, this, &MainWindow::s_menu_ESP32s);

修改为:

connect(m_showClientsWindow, SIGNAL(triggered()), this, SLOT(s_menu_Clients()));
connect(m_showESP32sWindow, SIGNAL(triggered()), this, SLOT(s_menu_ESP32s()));

这样可以正确地将triggered()信号与s_menu_Clients()s_menu_ESP32s()槽函数进行连接。

请注意,Qt 5版本以后,建议使用新的语法来连接信号和槽:QObject::connect(sender, &SenderClass::signalName, receiver, &ReceiverClass::slotName)。上面给出的示例是基于旧版语法进行修改。如果你使用的是较新版本的Qt,请尝试使用新版语法进行连接。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://qt.0voice.com/?id=9066

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?