应用程序查看器 setfullscreen 功能不隐藏 ubuntu 侧边栏
Application viewer setfullscreen function not hiding ubuntu sidebar
我正在为 Ubuntu Linux 使用 Qt 和 QML 的应用程序构建 UI。我有一个带有 canvas 元素的查看器 window,默认情况下应该是全屏的。打开应用程序时效果很好(即 Ubuntu 侧边栏和顶部任务栏被隐藏)。但是,一旦我最小化我的应用程序然后使用 viewer->setFullScreen();
再次最大化它,Ubuntu 侧边栏和顶部任务栏仍然可见并且在 canvas 上书写时存在偏移,因为相同的。
任何帮助将不胜感激。
根据 this topic on askubuntu, your problem do really looks like Unity bug (or feature). But, according to somehow related bug on Launchpad,您似乎可以通过以下方式获得所需的行为:
Turn "Always On Top" on via right-clicking the titlebar of your window, before making it go fullscreen.
This will prevent the Unity panel from rendering on top of this fullscreen-window, when using the other screen.
在 Qt 中,您可以通过 QWidget::windowFlags
.
将 Qt::WindowStaysOnTopHint
设置为您的 window/widget
另外注意官方文档中的注释:
- 此函数在更改 window 的标志时调用
setParent()
,导致小部件被隐藏。您必须调用 show()
才能使小部件再次可见。
- 关于
Qt::WindowStaysOnTopHint
-- 通知 window 系统 window 应该位于所有其他 windows 之上。请注意,在 X11 上的某些 window 管理器上,您还必须传递 Qt::X11BypassWindowManagerHint
才能使此标志正常工作。
希望对您有所帮助。
我正在为 Ubuntu Linux 使用 Qt 和 QML 的应用程序构建 UI。我有一个带有 canvas 元素的查看器 window,默认情况下应该是全屏的。打开应用程序时效果很好(即 Ubuntu 侧边栏和顶部任务栏被隐藏)。但是,一旦我最小化我的应用程序然后使用 viewer->setFullScreen();
再次最大化它,Ubuntu 侧边栏和顶部任务栏仍然可见并且在 canvas 上书写时存在偏移,因为相同的。
任何帮助将不胜感激。
根据 this topic on askubuntu, your problem do really looks like Unity bug (or feature). But, according to somehow related bug on Launchpad,您似乎可以通过以下方式获得所需的行为:
Turn "Always On Top" on via right-clicking the titlebar of your window, before making it go fullscreen. This will prevent the Unity panel from rendering on top of this fullscreen-window, when using the other screen.
在 Qt 中,您可以通过 QWidget::windowFlags
.
Qt::WindowStaysOnTopHint
设置为您的 window/widget
另外注意官方文档中的注释:
- 此函数在更改 window 的标志时调用
setParent()
,导致小部件被隐藏。您必须调用show()
才能使小部件再次可见。 - 关于
Qt::WindowStaysOnTopHint
-- 通知 window 系统 window 应该位于所有其他 windows 之上。请注意,在 X11 上的某些 window 管理器上,您还必须传递Qt::X11BypassWindowManagerHint
才能使此标志正常工作。
希望对您有所帮助。