2

私は PyQt4 と QTreeView を使用しています (ただし、これは直接 qt に簡単に適用できます)。

現在、右矢印と左矢印を使用してブランチの展開/折りたたみを制御するデフォルトのキー バインドがあります。残念ながら、これらのバインディングは理想的ではないため、無効にしたいと考えています。私はそれを行う方法を理解することができませんでした。QTreeView のデフォルトのキーバインディングを無効にする (または再割り当てする) 方法を知っている人はいますか?

4

1 に答える 1

4

考えられるオプションは2つあります。1) QTreeViewのkeyPressEventを再実装し、押されたキーがQt::Key_UpまたはQt:: Key_Downのいずれかであるかどうかを確認します。

2)eventFilterをインストールして、イベントがQEvent :: KeyPressであり、キーがQt::Key_UpまたはQt:: Key_Downのいずれかに一致するかどうかを確認できます。

私はPyQtを知らないので、Pythonでコードを提供することはできませんが、十分に明確になっていることを願っています。

于 2010-11-09T13:01:55.183 に答える