1

Java ではSWING、「タブ」はすべての間でkeyグローバルに転送します。この「デフォルト」の動作を何らかの方法で変更することは可能ですか?focuscomponents

したがって、「Tab」で を変更する代わりに、「 Enterkey 」キーで変更しfocusたいのです。

前もって感謝します!

4

2 に答える 2

1

focusTraversalSystemを変更するには、多くの作業が必要です。すべてのスイングコンポーネントを保持するパネルにactionListenerを追加し、キーが押されているかどうかを確認することをお勧めします。これは、tabFocus変数+ 1を持つ次の要素にフォーカスを変更するだけです(コンポーネントを配列に配置する必要があります)ループするか、該当する場合はネイティブのswingメソッドを使用します)。

于 2012-05-01T18:42:54.430 に答える
1

私はそれを使用することによって確信しています

1)KeyBindingsあなたはそれをとても簡単で最も安全な方法で行うことができます

2) window from メソッドで 最後Componentの J/Component を取得できますFocusComponent#getOppositeComponent()

いいえ、ArrayまたはSwingUtilities必要です。おそらくZ-Orderデフォルトでそれを行うことができますが、すべての場合にサポートされているわけではありませんLook and Feels

于 2012-05-01T20:42:10.533 に答える