概要

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

サンプルコード

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

解説

上記のサンプルでは、JTableのセルエディタを起動するのに必要なマウスクリックの回数をDefaultCellEditor#setClickCountToStart(...)メソッドで1回に設定しています。

  • edit the cell on single clickをチェックした場合、セルレンダラーも変更して文字列に下線を引くように設定
    • 環境やバージョンによって以下のように動作が異なる場合がある
      • WindowsLookAndFeelの場合、第0列目のセルをクリックし選択された行直下の第1列目セル上にカーソルを置くと、その文字色がJDK 1.6.0JDK 1.5.0で異なる
      • JDK 1.5.0で選択されたときの文字色になる?
      • Ubuntu 7.10GNOME 2.20.1JDK 1.6.0_03の場合、MetalLookAndFeelGTKLookAndFeel0行目(Number.class)に使われるセルレンダラーが異なる
      • GTKLookAndFeelNumber.classなのに左寄せになってしまう?

参考リンク

コメント