• title: JTableのセルをシングルクリックで編集する tags: [JTable, TableCellEditor] author: aterai pubdate: 2007-11-19T13:45:37+09:00 description: JTableのセルをマウスでシングルクリックすると編集状態になるように設定します。

概要

JTableのセルをマウスでシングルクリックすると編集状態になるように設定します。

サンプルコード

DefaultCellEditor ce = (DefaultCellEditor)table.getDefaultEditor(Object.class);
ce.setClickCountToStart(1);
//ce.setClickCountToStart(2); //default
View in GitHub: Java, Kotlin

解説

DefaultCellEditor#setClickCountToStartメソッドを使用すれば、編集開始に必要なマウスクリックの回数を設定することができます。


edit the cell on single clickにチェックがある場合は、セルレンダラーも変更して、文字列の下に下線を引いていますが、環境やバージョンによって動作が異なる場合があるようです。

  • WindowsLookAndFeelの場合、第0列目のセルをクリック、選択された行直下の第1列目セル上にカーソルを置くと、その文字色がJDK 1.6.0JDK 1.5.0で異なる
    • JDK 1.5.0で、選択されたときの文字色になる?
  • Ubuntu 7.10, GNOME 2.20.1, JDK 1.6.0_03の場合、MetalLookAndFeelGTKLookAndFeelで、0行目(Number.class)に使われるセルレンダラーが異なる
    • GTKLookAndFeelで、Number.classなのに左寄せになってしまう?

参考リンク

コメント