Swing/ImplicitDownCycleTraversal のバックアップ(No.5)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/ImplicitDownCycleTraversal へ行く。
- 1 (2017-02-20 (月) 19:40:38)
- 2 (2017-02-28 (火) 17:51:53)
- 3 (2017-11-15 (水) 15:47:49)
- 4 (2018-02-15 (木) 14:23:42)
- 5 (2019-07-18 (木) 16:49:28)
- 6 (2021-03-23 (火) 02:23:36)
- 7 (2024-05-07 (火) 22:59:25)
- 8 (2025-01-03 (金) 08:57:02)
- 9 (2025-01-03 (金) 09:01:23)
- 10 (2025-01-03 (金) 09:02:38)
- 11 (2025-01-03 (金) 09:03:21)
- 12 (2025-01-03 (金) 09:04:02)
- category: swing folder: ImplicitDownCycleTraversal title: FocusTraversalPolicyの自動的なフォーカスダウンサイクルを無効にする tags: [Focus, FocusTraversalPolicy] author: aterai pubdate: 2016-10-24T00:34:35+09:00 description: SortingFocusTraversalPolicyを設定したパネルで、暗黙的にフォーカスをダウンサイクルで移動しないように設定します。 image: https://drive.google.com/uc?id=1BhqefPKEKZ7kqrsjy2ySEncqitLXR7qrfw
概要
SortingFocusTraversalPolicy
を設定したパネルで、暗黙的にフォーカスをダウンサイクルで移動しないように設定します。
Screenshot

Advertisement
サンプルコード
JPanel p = new JPanel();
LayoutFocusTraversalPolicy ftp = new LayoutFocusTraversalPolicy();
ftp.setImplicitDownCycleTraversal(false);
p.setFocusCycleRoot(true);
p.setFocusTraversalPolicy(ftp);
View in GitHub: Java, Kotlin解説
上記のサンプルでは、SortingFocusTraversalPolicy#setImplicitDownCycleTraversal(...)
で、暗黙的にフォーカスをダウンサイクルで移動するかどうかを切り替えて、子パネルへのフォーカス移動のテストを行っています。
SortingFocusTraversalPolicy#setImplicitDownCycleTraversal(true)
- デフォルト
- デフォルトフォーカスの
JCheckBox
から、Tabキーで子パネル内のJTextArea
にダウンサイクルでフォーカスが移動可能
SortingFocusTraversalPolicy#setImplicitDownCycleTraversal(false)
- 子パネルが
setFocusCycleRoot(true)
の場合、デフォルトフォーカスのJCheckBox
からTabキーを押すと、これを飛ばしてJButton
にフォーカスが移動 - 子パネルが
setFocusCycleRoot(false)
の場合、デフォルトフォーカスのJCheckBox
からTabキーを押すと、JTextArea
にフォーカスが移動
- 子パネルが