以下は私のコードの抜粋です。JTableがあります。DefaultCellEditorを拡張して、独自のエディターを作成しました。セルにキーリスナーとマウスリスナーを追加しました。JButtonもあります。JButtonをクリックすると、JTableの最初のセルを編集モードにします。このために、requestFocusとeditCellAt(0,0)を使用しました。私はこのコードをactionperformedに入れました。
public void actionPerformed(ActionEvent e)
{
System.out.println("action performed");
if(e.getSource().equals(btn))
{
oTable.requestFocus();
oTable.setRowSelectionInterval(0, 0);
oTable.editCellAt(0, 0);
}
}
これにより、カーソルが最初のセルに配置されます。しかし、私が何かを入力しても、重要なイベントは発生しません!注:マウスを使用してセルをクリックしてから入力すると、キーイベントが発生します。しかし、私はこの余分なクリックをしたくありません。