QMainWindow と一緒に XEvent を使用して、 Window Manager でもアプリケーションを閉じることができないようにする必要があると思います。
これは、すべてのキーボード、マウス ボタンをブロックする全画面表示のビデオ ゲームのようなものです。
PS: QWidget::grabKeyboard() && QWidget::grabMouse() は、「ALT_TAB」などのキーの組み合わせで他のアプリケーションに切り替えようとすると機能しません
ありがとう。
他のアプリからのすべての入力を完全にブロックするには、 /の組み合わせXGrabServer
ではなく andを使用する必要があります。Qt にそのための API があるかどうかはわかりませんが、いつでも Xlib 関数を直接呼び出すことができます。XGrabKeyboard
XGrabPointer
しかし、私はそれに対してお勧めします。アプリケーションがなんらかの理由でグラブを解放しない場合は、スタックしており、コンソールにエスケープして強制終了する必要があります。
ここで説明されているように、メイン ウィンドウのcloseEvent()をオーバーライドし、 ignore()メソッドを使用してイベントを拒否できると思います。