• 5623阅读
  • 5回复

[提问]QToolBar里的QAction一直认为鼠标在他上面(已解决) [复制链接]

上一主题 下一主题
离线呆呆很呆
 
只看楼主 倒序阅读 楼主  发表于: 2012-08-21
我在QToolBar里加了一个QAction,然后QAction触发的时候会出现QFileDialog,导致操作完成后这样
经过测试,给QToolBar、QAction发送(QApplication::postEvent)鼠标移动事件、或调用QToolBar的update事件均无效,怎么处理呢???求教

————————已解决————————

用下面一行代码即可
   QApplication::postEvent(fileToolBar->widgetForAction(saveAction),new QEvent(QEvent::Leave));  

离线xzoscar
只看该作者 1楼 发表于: 2012-08-21
在帮助文档里查看,qt style sheet,找到QToolBar,通过css就可以搞定;所以代码肯定是可以搞定的!
XZoscar@163.com
QQ,351565950
南京
离线rcyboom

只看该作者 2楼 发表于: 2012-08-21
最大的可能是所在窗口没有任何其它常规保持输入焦点的控件,如edit之类的而导致焦点始终保持在上面,解决方式:
1、让焦点到别处去
2、通过sheet或者代码让焦点在上面和不在上面的时候显示一个摸样
离线呆呆很呆
只看该作者 3楼 发表于: 2012-08-21
不要用QSS,设置焦点没用
离线呆呆很呆
只看该作者 4楼 发表于: 2012-08-21
已解决
QApplication::postEvent(fileToolBar->widgetForAction(saveAction),new QEvent(QEvent::Leave));
离线myseemylife

只看该作者 5楼 发表于: 2012-08-22
回 4楼(呆呆很呆) 的帖子
不错~~这个问题纠结好久了
蠢笨的愚钝~
快速回复
限100 字节
 
上一个 下一个