TITLE:JTableのセルをシングルクリックで編集する

Usage: #tags(tags)
Posted by at 2007-11-19

JTableのセルをシングルクリックで編集する

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

  • &jnlp;
  • &jar;
  • &zip;
SingleClickCellEdit.png

サンプルコード

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"にチェックがある場合は、セルレンダラーも変更して、文字列の下に下線を引いていますが、環境やバージョンによって動作が異なる場合があるようです。

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

参考リンク

コメント