如何在QML中隐藏光标

Rus*_*Sk. 6 c++ qt qml qtquick2

我想知道如何在QML,QT 5.7中隐藏光标.

我试着用

QGuiApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
Run Code Online (Sandbox Code Playgroud)

app.setOverrideCursor( QCursor( Qt::BlankCursor ) );
Run Code Online (Sandbox Code Playgroud)

但两者都不起作用.

/home/QTProjects/main.cpp:13: error: invalid use of incomplete type 'class QCursor'
     QGuiApplication::setOverrideCursor(QCursor(Qt::BlankCursor));
                                                               ^
Run Code Online (Sandbox Code Playgroud)

如果有可能我可以将光标隐藏在QML中而不是C++端.

dte*_*ech 8

您可以使用禁用的叠加层MouseArea来隐藏它:

  Button {
    onClicked: console.log("clicked")
  }

  MouseArea {
    anchors.fill: parent
    enabled: false
    cursorShape: Qt.BlankCursor
  }
Run Code Online (Sandbox Code Playgroud)

只需将鼠标区域放在您的底部main.qml,它将对事件透明但仍覆盖光标形状.