【问题标题】:Hide cursor in fullscreen mode using Qt 4.8?使用 Qt 4.8 在全屏模式下隐藏光标?
【发布时间】:2019-12-11 04:35:33
【问题描述】:

我在带有 OpenBox 的 ArchLinux 中,我想在 Qt 4.8 应用程序中全屏隐藏光标。我知道有关它的其他一些问题,但没有人每次都有效:有时光标隐藏,有时不隐藏。我无法准确理解问题何时发生,但我认为这可能与屏幕保护程序有关,因为如果我在计算机重新启动后测试我的应用程序,鼠标光标不可见(这就是我想要的)但是如果我在白天测试此功能,鼠标光标仍然全屏可见。

这是我的代码:

void MainWindow::toggleFullScreen()
{
    if(!this->isFullScreen())
    {
        this->showFullScreen();
        #ifdef Q_WS_QWS
            QWSServer::setCursorVisible( false );
        #endif

    }
    else
    {
        this->showNormal();
    }
}

【问题讨论】:

标签: qt qt4 mouse mouse-cursor


【解决方案1】:

我想全屏隐藏光标...

您可以将光标设置为空白光标:

widget->setCursor(Qt::BlankCursor);

此外,正如文档所述:

即使鼠标被抓住,如果光标离开小部件,一些底层窗口实现也会重置光标。如果您想为所有小部件设置一个光标,即使在窗口之外,请考虑QApplication::setOverrideCursor()

所以你可以调用:

QApplication::setOverrideCursor(Qt::BlankCursor);

【讨论】:

    【解决方案2】:

    有一个名为 unclutter 的程序可以隐藏鼠标指针。这是一个 ArchLinux 软件包:

    https://www.archlinux.org/packages/community/i686/unclutter/

    我目前在嵌入式系统上使用它来隐藏触摸屏上的鼠标光标。

    【讨论】:

      猜你喜欢
      • 2010-11-02
      • 2016-05-16
      • 2011-04-06
      • 1970-01-01
      • 2014-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多