简体   繁体   English

Qt OSX 全屏窗口上层 menuBar 和 Dock

[英]Qt OSX fullscreen window upper menuBar and Dock

Qt5.6, OS X El Capitan. Qt5.6,OS X El Capitan。 I have a problem, I need to select an area on the screen to take a screenshot, but the menu bar and dock are always on my window.我有一个问题,我需要在屏幕上选择一个区域来截屏,但是菜单栏和停靠栏总是在我的窗口上。

My code:我的代码:

QScreen *screen = QGuiApplication::primaryScreen();
QRect desktop = screen->virtualGeometry();

region = new SelectRegion;

region->setGeometry(desktop);
region->show();
region->focusWidget();
region->activateWindow();
region->raise();

Region Window has flags: Qt::Window, Qt::FramelessWindowHint, Qt::WindowStaysOnTopHint.区域窗口有标志:Qt::Window、Qt::FramelessWindowHint、Qt::WindowStaysOnTopHint。

How to move my window to the top?如何将我的窗口移动到顶部?

在此处输入图片说明

Qt::WindowFlags windowFlags =
        Qt::WindowStaysOnTopHint |
        Qt::BypassWindowManagerHint |
        Qt::FramelessWindowHint |
        Qt::NoDropShadowWindowHint |
        Qt::ToolTip;

setWindowFlags(windowFlags);

should do it...应该做...

标志 Qt::Popup 连同将其大小设置为屏幕的大小应该可以解决问题,但是请注意,它可能会破坏键盘焦点。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM