QT-通常はウィンドウマネージャーによって処理されるイベントをキャッチします
-
27-10-2019 - |
質問
質問を簡潔に表現する方法がよくわからないので、同様の質問がある場合は、正しい方向に向けて、これを閉じてください。
現在、CADアプリを構築しています。ユーザーは、主にマウスと3つのキーボード修飾子(ALT、Shift、CTRL)を介して3Dビューポート内で対話します。シフトと制御現在選択されているツールオプションを変更し、ALTが他の3D CADアプリと同じようにカメラを操作します。
しかし、私は現在GNOMEデスクトップで開発しており、ウィンドウマネージャー(AFAIK)がAlt -rightButtonマウスドラッグイベントをキャッチし、ウィンドウドラッグコマンドとして解釈します - タイトルバーを保持していなくても、現在強調表示されているウィジェットに関係なく。
カメラキーボードコントロールは私のターゲット業界で非常に標準化されているため、これは私にとって災害です。 QT内から、できればこの動作をオーバーライドする方法を知っている人はいますか?
ありがとうございました、
カム
解決
QT :: x11bypasswindowmanagerhintをウィンドウで使用する場合、ウィンドウマネージャーはキープレスを盗むことができません。ただし、これは、ネイティブの窓枠を失うことを意味します(装飾、移動、サイズ変更を含む)ので、おそらく あなたはこれをしたくありません.
別の方法:ユーザーが1種類または2種類のLinuxだけである場合、インストーラーに何かを追加して、ユーザーにGNOMEを操作する(または何でも)キーセットを操作するかどうかを尋ねます。同等)。
所属していません StackOverflow