Swing/SelectNextRow のバックアップ(No.25)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- 現在との差分 - Visual を表示
- ソース を表示
- Swing/SelectNextRow へ行く。
- 1 (2005-04-18 (月) 01:45:22)
- 2 (2005-04-18 (月) 01:50:06)
- 3 (2005-04-19 (火) 10:10:03)
- 4 (2005-04-28 (木) 04:32:58)
- 5 (2005-06-15 (水) 02:35:52)
- 6 (2005-09-28 (水) 07:07:15)
- 7 (2006-02-27 (月) 16:25:55)
- 8 (2006-05-26 (金) 12:42:37)
- 9 (2006-05-26 (金) 14:58:39)
- 10 (2006-05-26 (金) 18:38:58)
- 11 (2006-05-26 (金) 22:11:24)
- 12 (2007-03-03 (土) 03:55:47)
- 13 (2007-09-22 (土) 13:45:47)
- 14 (2013-03-30 (土) 21:11:24)
- 15 (2013-07-26 (金) 01:26:30)
- 16 (2013-08-20 (火) 14:26:10)
- 17 (2013-09-06 (金) 00:01:07)
- 18 (2014-11-25 (火) 03:03:31)
- 19 (2014-11-26 (水) 18:35:08)
- 20 (2014-12-05 (金) 17:25:29)
- 21 (2015-06-25 (木) 16:29:50)
- 22 (2017-03-23 (木) 12:14:55)
- 23 (2018-01-26 (金) 22:43:51)
- 24 (2020-01-16 (木) 20:27:57)
- 25 (2021-07-14 (水) 23:43:43)
- category: swing folder: SelectNextRow title: JTableの次行にTabキーでフォーカスを移動 tags: [JTable, InputMap, Focus] author: aterai pubdate: 2005-04-18T01:45:22+09:00 description: Tabキーでセルのフォーカスが次行に移動するように設定します。 image:
概要
Tabキーでセルのフォーカスが次行に移動するように設定します。
Screenshot
Advertisement
サンプルコード
InputMap im = table.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
KeyStroke tab = KeyStroke.getKeyStroke(KeyEvent.VK_TAB, 0);
KeyStroke enter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
im.put(tab, im.get(enter));
View in GitHub: Java, Kotlin解説
上記のサンプルでは、チェックボックスでTabキーでのフォーカスの移動(セル毎に移動)が、Enterキーと同じ(行毎に移動)になるように切り替えています。
- 逆遷移のShift+Tabなどに対応する場合は、修飾子を
0
ではなくInputEvent.SHIFT_DOWN_MASK
にしたKeyStroke
をInputMap
に設定するKeyStroke stab = KeyStroke.getKeyStroke(KeyEvent.VK_TAB, InputEvent.SHIFT_DOWN_MASK); KeyStroke senter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, InputEvent.SHIFT_DOWN_MASK);
参考リンク
- Swing (Archive) - JTable skiping the cells disableds
- 編集不可のセルを飛ばして、Tabキーでフォーカス移動を行うサンプル