JTable のデフォルトの動作は、Tab または Enter を押して次の編集可能なセルに移動することです。しかし、私が欲しいのはこのようなものです.Enterを押すと、次のセルに移動するのではなく、セルを編集する必要があります. これを実装する方法、事前に感謝します。
1 に答える
1
Swing は、キー バインディングを使用するように設計されています (キー バインディングの使用方法に関する Swing チュートリアルを参照してください)。つまり、Action を KeyStroke にバインドします。
デフォルトでは:
Enter
キーは、セルの選択を次の行に移動しますF2
キーはセルを編集モードにします
Enter キーのデフォルトのアクションを F2 キーのアクションに置き換えます。これは、キー バインドを使用して簡単に実行できます。
InputMap im = table.getInputMap(JTable.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
KeyStroke enter = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0);
KeyStroke f2 = KeyStroke.getKeyStroke(KeyEvent.VK_F2, 0);
im.put(enter, im.get(f2));
また、すべての Swing コンポーネントのデフォルト バインディングのリストについては、キー バインディングを確認してください。
于 2013-08-23T15:00:48.943 に答える