• 追加された行はこの色です。
  • 削除された行はこの色です。
TITLE:JTableのセルをシングルクリックで編集する
#navi(../)
#tags()
#tags(JTable, TableCellEditor)
RIGHT:Posted by &author(aterai); at 2007-11-19
*JTableのセルをシングルクリックで編集する [#x6bd18c2]
JTableのセルをマウスでシングルクリックすると編集状態になるように設定します。
``JTable``のセルをマウスでシングルクリックすると編集状態になるように設定します。

-&jnlp;
-&jar;
-&zip;

//#screenshot
#ref(http://lh5.ggpht.com/_9Z4BYR88imo/TQTTDScXHaI/AAAAAAAAAjw/VQhi8npFmCM/s800/SingleClickCellEdit.png)

**サンプルコード [#p4abbff1]
#code(link){{
DefaultCellEditor ce = (DefaultCellEditor)table.getDefaultEditor(Object.class);
ce.setClickCountToStart(1);
//ce.setClickCountToStart(2); //default
}}

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

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

**参考リンク [#i428619f]
-[http://forums.sun.com/thread.jspa?threadID=5227475 Swing - JTable - enable cursor blink at cell with single click]
- [http://forums.sun.com/thread.jspa?threadID=5227475 Swing - JTable - enable cursor blink at cell with single click]

**コメント [#mce62f2e]
#comment