QComboBox 可编辑时,信号activated()触发两次?

weixin_38058377 2019-09-19 12:59:24
部分代码 ...... QComboBox *combo = new QComboBox(this); combo->setEditable(true); combo->setInsertPolicy(QComboBox::NoInsert); ...... connect(combo, SIGNAL(activated(int)), this, SLOT(testSlot(int)));// void testSlot(int index)为测试使用的自定义槽 ...... 操作: 当combo获得光标焦点,并下拉展开内部选项后,回车(注意:一定是回车,而非鼠标点击)选中某选项时, 问题: 信号activated() 为何被触发两次?? 是我用得不对,还是QT的bug? 有解决办法吗?
...全文
1073 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38066592 2019-09-19
  • 打赏
  • 举报
回复
那你改用信号currentIndexChanged ( int index )
weixin_38071610 2019-09-19
  • 打赏
  • 举报
回复
感谢楼上同学的回复.我必须要使用 activated 信号. 怎么办? 无解了?要是QT就是这么设计的,那我只能考虑变更我的设计了.
weixin_38077401 2019-09-19
  • 打赏
  • 举报
回复
没测试过activated是不是响应了两次,如果怎是这样,你就自己写一个QComboBox控件,重写他的activated信号让它只响应一次就行了
weixin_38095150 2019-09-19
  • 打赏
  • 举报
回复
嘿嘿,看到你提问说你必须要使用activated信号,那么认为你肯定知道它的作用拉?我为这个东东已经头疼了几天了,请问下,  activated信号是qt本身的信号吧?因为我在我下载下来的代码中没有找到它的定义,如果是的话请问她是在什么情况被发射的?网上搜到的结果都是当检测到对象活跃时就会发射,这个活跃该怎么理解呢?先谢谢拉

474

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧