【问题标题】:QT QMainWindow fullscreen without bordersQT QMainWindow 全屏无边框
【发布时间】:2014-10-05 19:32:53
【问题描述】:

如何使用 QMainWindow 实现无边框全屏?我得到了一个全屏,包括屏幕周围的窗口边框。我想要一个像电子游戏一样的“真实”全屏。不是窗口全屏。

我试过了:

MainWindow mainWindow;
mainWindow.setWindowState(Qt::WindowFullScreen);
mainWindow.showFullScreen();

QMainWindow 的 MainWindow 扩展。

【问题讨论】:

  • 我意识到这不是由于我的 QGLWidget,我将研究解决方案并找到一种方法来获得真正的全屏。

标签: c++ qt window qt-creator fullscreen


【解决方案1】:

全屏:

QWidget::showFullScreen();

退出全屏:

QWidget::showMaximized();

【讨论】:

  • 7 岁的问题...您的解决方案是从 Qt 文档复制粘贴。我尝试了 showfullscreen 功能并将其发布在我的问题中,但这不是解决方案。
【解决方案2】:

我用过

this->setFlags(Qt::FramelessWindowHint);

My Window 是一个 QQuickView,它是从 QQuickWindow,QWindow 派生的

有方法

QWindow *QWidget::windowHandle() const

从 QWidget 派生的 QMainWindow...(请参阅 http://doc.qt.io/qt-5/qwidget.html

我不确定,但您可以测试以下代码:

mainWindow->windowHandle()->setFlags(Qt::FramelessWindowHint);
mainWindow->windowHandle()->showFullScreen();

【讨论】:

    【解决方案3】:

    你想setWindowFlagsQt::FramelessWindowHintQt::CustomizeWindowHint。所以mainWindow->setWindowFlags(Qt::CustomizeWindowHint | Qt::FramelessWindowHint) 应该适合你。

    【讨论】:

    • 嗯,实际上我发现了问题所在。这是由于 GLWidget 而我没有找到任何解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-29
    • 2012-03-15
    • 2013-06-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-03
    相关资源
    最近更新 更多