私は を持ってQDialog
いQDialogButtonBox
ます。[ OK ] ボタンと[キャンセル]ボタンがアクティブになります。時折、ダイアログの状態に基づいて [OK] ボタンを無効にしたり非表示にしたりします。何をしても、Enter キーを押すと常に [OK] ボタンがアクティブになるようです。私は本当にこれが起こることを望んでいません。私が試してみました:
- ボタンを表示/非表示/有効/無効にするたびにデフォルトおよびautoDefaultプロパティをfalseに設定する
- [OK] ボタンにイベント フィルターをインストールして、キー イベント (押されたものと離されたもの) をインターセプトし、戻る、入力する、スペースを入力する
- ボタンのフォーカス ポリシーをNoFocusに設定する
上記のすべての組み合わせで、Enter キーは引き続きダイアログを受け入れます。これをブロックする方法を知っている人はいますか? このような単純なものをブロックできるように思えますか?