• 6784阅读
  • 6回复

[提问]为菜单action添加slot [复制链接]

上一主题 下一主题
离线yinrenjieone
 

只看楼主 倒序阅读 楼主  发表于: 2011-07-27
突然发现,原来不做第4步程序也能正常编译运行,而且点击之后居然能够正确执行槽函数!
难道Qt Creator 2.2.1已经如此智能了吗……
---------------------------------------------------------------------------
我都是如下操作,但是总会有warning
1.qt creator添加菜单action
2.在.h中添加private slots声明
void on_action_triggered(bool b);
3.在.cpp实现on_action_triggered(bool b){}
4.在.cpp添加connect(ui->action, SIGNAL(triggered(bool)), this, SLOT(on_action_triggered(bool b)));

然后编译运行程序总是在控制台提示
Object::connect: No such slot MainWindow::on_action_triggered(bool b)
Object::connect:  (sender name:   'action')
Object::connect:  (receiver name: 'MainWindow')
但是运行又一切正常……
我的操作哪里有问题吗?
在线uidab

只看该作者 1楼 发表于: 2011-07-27
回 楼主(yinrenjieone) 的帖子
不清楚,我只能告诉你我们里有两个大项目在升级到Qt 4.7.0后都不稳定,又还原到 4.6.3。
最近刚刚测试了 4.7.4 还是不成功。真的很奇怪!
XP和win7都测试了,XP好点,但是win7不行
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线jdwx

只看该作者 2楼 发表于: 2011-07-27
Object::connect: No such slot MainWindow::on_action_triggered(bool b)
错误信息说的很明白。
还是把代码发上来吧,好分析。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线dbzhang800

只看该作者 3楼 发表于: 2011-07-27
引用第2楼jdwx于2011-07-27 15:14发表的  :
Object::connect: No such slot MainWindow::on_action_triggered(bool b)
错误信息说的很明白。
还是把代码发上来吧,好分析。

这个信息已经很充分了,呵呵。
离线abcdlcq

只看该作者 4楼 发表于: 2011-07-28
This example ensures that the label always displays the current scroll bar value. Note that the signal and slots parameters must not contain any variable names, only the type. E.g. the following would not work and return false:

         // WRONG
         QObject::connect(scrollBar, SIGNAL(valueChanged(int value)),
                          label, SLOT(setNum(int value)));
离线a134itrp56
只看该作者 5楼 发表于: 2011-07-29
一个顶字解决战役
离线yinrenjieone

只看该作者 6楼 发表于: 2011-08-07
感谢各位的帮助~
快速回复
限100 字节
 
上一个 下一个