gpt4 book ai didi

c++ - Qt5 : could not connect signal to slot

转载 作者:行者123 更新时间:2023-11-28 06:20:35 24 4
gpt4 key购买 nike

我正在尝试升级我的旧应用程序..(再添加一项功能)。因此,我在"file"菜单中又添加了一项。

<addaction name="actionDownload_Firmware_Image"/>

<action name="actionDownload_Firmware_Image">


<property name="text">
<string>&amp;Download Firmware Image</string>
</property>
<property name="menuRole">
<enum>QAction::ApplicationSpecificRole</enum>
</property>
</action>

在这里定义我的插槽:

void MainWindow::on_actionDownload_Firmware_Image_triggered()

主窗口.h>

private slots:
void on_actionDownload_Firmware_Image_triggered();

所以,我清理我的项目,运行 qmake,构建项目...播放它,我得到与以前完全相同的 GUI,没有新的菜单项。

当应用程序运行时,我收到以下消息>

QMetaObject::connectSlotsByName: No matching signal for on_actionDownload_Firmware_Image_triggered()

我注意到关于 stackoverflow 的其他问题,不推荐使用 connectSlotsByName,但我所有的函数和槽都被调用完全相同,所以它应该像这样工作。

我不确定为什么会这样,欢迎任何帮助。

谢谢!

最佳答案

问题解决了!

不需要编码...

在编译时,Qt 将 ui_mainwindow.h 放在其新创建的构建文件夹中,而不是项目文件夹中。因此应用程序看不到更新的 .h

将新的 .h 复制到项目文件夹后,执行 qmake 并再次构建,一切正常。

关于c++ - Qt5 : could not connect signal to slot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29369571/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com