Qt在全屏状态下,右键菜单不显示的问题

小猪猪哇 2018-11-28 03:11:20
用QT写了个程序,右键菜单使用重写contextMenuEvent的方式添加的。窗口正常状态和最大化,右键菜单都能显示出来,使用showFullScreen()显示全屏之后,右键单击菜单没显示出来了。此时鼠标往右移一点,能够点击到右键菜单的选项,但就是看不见右键菜单,退出全屏之后右键菜单就又有了,请问这是怎么回事。窗口上就有一个openglwidget,使用的是VS2015+qt5.9.6
...全文
2341 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
寒山-居士 2019-06-19
  • 打赏
  • 举报
回复 1
QOPenGlWidget 窗口 在 showFullScreen 的情况下 会出现 弹不出 菜单 窗口等BUG。。 解决办法 参考 :http://doc.qt.io/qt-5/windows-issues.html 调用 QWindowsWindowFunctions::setHasBorderInFullScreen(w->windowHandle(), true); 就行。。。
feiyangqingyun 2019-04-17
  • 打赏
  • 举报
回复 2
我已经解决了,思路就是设置窗体大小往上移动一个像素,这样既保持了全屏的效果,又没有右键菜单弹不出来的烦恼。
//全屏+QWebEngineView控件一起会产生右键菜单无法弹出的BUG,需要上移一个像素
QRect rect = qApp->desktop()->geometry();
rect.setY(-1);
rect.setHeight(rect.height());
this->setGeometry(rect);
feiyangqingyun 2018-12-10
  • 打赏
  • 举报
回复
卧槽,我也是遇到了这个问题,无解,我没有用到openglwidget,我只是用了webenginewidgets,也是一样的问题,如果移除了,全屏也是ok的,关键是mingw+gcc等编译器都是正常的,唯独在msvc这里不行!
小猪猪哇 2018-12-05
  • 打赏
  • 举报
回复
小猪猪哇 2018-12-03
  • 打赏
  • 举报
回复
头痛啊,这块该怎样解决
小猪猪哇 2018-12-02
  • 打赏
  • 举报
回复
但是我使用Understack() raise()都无法显示出来呀
@风轻云淡_ 2018-11-30
  • 打赏
  • 举报
回复
可能是因为显示顺序不同,右键单击的菜单栏已经显示出来了,只不过是在你全屏的这个窗口后面,能点不能看,建议你百度搜索一下窗口重叠显示顺序关键字看看能不能找到你想要的答案,应该不是没有出来的问题,而是已经出来了你看不到的问题。
小猪猪哇 2018-11-30
  • 打赏
  • 举报
回复
再顶!!!!
小猪猪哇 2018-11-29
  • 打赏
  • 举报
回复
我顶!!!!
小猪猪哇 2018-11-28
  • 打赏
  • 举报
回复
尝试了show() Understack() raise() 等方法都不管用

24,860

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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