我的Qt版本是Qt4.8.7需求是这样的:有一个按钮,第一次点击按钮,弹出“菜单”(即action列表)并触发一个默认的action,再次点击按钮,触发下一个action,一直这样循环下去,直到鼠标点击其他地方,菜单隐藏。
我目前用QPushButton的clicked信号和QMenu的popup槽绑定,并且将QMenu设置成非模态,menu->setWindowModality(Qt::NonModal),
这样的话在windows10环境下可以达到预期的效果但是菜单会闪烁,在Ubuntu12.04中却实现不了,也就是说,在ubuntu中没法将菜单设置为非模态的——第一次弹出菜单后,父窗口仍然处理不了鼠标事件。
我的目的:请大神帮我提供一个解决问题的思路,不必非得用QPushButton+QMenu来做,但是最好将上述需求在同一个类中实现。
谢谢!