#include #include #include #include class MouseArea : public QWidget { public: MouseArea(QWidget *parent) : QWidget(parent) , m_cursor_hidden(false) {} void mousePressEvent(QMouseEvent *) override { if (m_cursor_hidden == false) { m_cursor_hidden = true; QGuiApplication::setOverrideCursor( QCursor(Qt::BlankCursor) ); } else { m_cursor_hidden = false; QGuiApplication::restoreOverrideCursor(); } } private: bool m_cursor_hidden; }; class MainWindow : public QMainWindow { public: MainWindow(QWidget *parent = nullptr) : QMainWindow(parent) , m_area(this) { m_area.resize( this->size() ); } private: MouseArea m_area; }; int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.setFixedSize({600, 600}); w.show(); return a.exec(); }