JTableのセルのハイライト

編集者:Terai Atsuhiro
作成日:2004-03-21
更新日:2021-11-18 (木) 11:29:54

概要

セル上にマウスがある場合、その色を変更します。

http://terai.xrea.jp/swing/cellhighlight/screenshot.png

サンプルコード

public void mouseMoved(MouseEvent me) {
  Point pt = me.getPoint();
  int nrow = table.rowAtPoint(pt);
  int ncol = table.columnAtPoint(pt);
  AbstractTableModel model = (AbstractTableModel)table.getModel();
  if(nrow<0 || ncol<0) {
    row = -1;
    col = -1;
  }else{
    row = nrow;
    col = ncol;
  }
  table.repaint();
}

解説

MouseListenerでマウスカーソルが乗っているセルを記憶し、レンダラーで色をつけています。

列の入れ替えには対応していません。

コメント