Swing/HeaderTooltips の変更点
- 追加された行はこの色です。
- 削除された行はこの色です。
- Swing/HeaderTooltips へ行く。
- Swing/HeaderTooltips の差分を削除
--- category: swing folder: HeaderTooltips title: JTableHeaderのTooltipsを列ごとに変更 tags: [JTable, JTableHeader, JToolTip] author: aterai pubdate: 2005-05-23T10:16:01+09:00 description: JTableHeaderのTooltipsがカーソルのある列の内容などを表示するようにします。 image: https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTNx5xm6BI/AAAAAAAAAbU/LCSjxDNp8p0/s800/HeaderTooltips.png --- * 概要 [#summary] `JTableHeader`の`Tooltips`がカーソルのある列の内容などを表示するようにします。 #download(https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTNx5xm6BI/AAAAAAAAAbU/LCSjxDNp8p0/s800/HeaderTooltips.png) * サンプルコード [#sourcecode] #code(link){{ JTable table = new JTable(model); table.setTableHeader(new JTableHeader(table.getColumnModel()) { @Override public String getToolTipText(MouseEvent e) { int c = columnAtPoint(e.getPoint()); return getTable().getColumnName(c) + DUMMY_TEXT; int i = columnAtPoint(e.getPoint()); TableColumn c = getColumnModel().getColumn(i); return String.format("%s (width=%dpx)", c.getHeaderValue(), c.getWidth()); } }); }} * 解説 [#explanation] 上記のサンプルでは、`JTableHeader#getToolTipText(MouseEvent)`メソッドをオーバーライドしてマウスカーソルの下にあるカラムヘッダの名前を`TooltipsText`として返すよう設定しています。 - `JTableHeader#getToolTipText(MouseEvent)`メソッドをオーバーライドしてマウスカーソルの下にあるカラムヘッダを取得 -- その名前とその幅を`TooltipsText`として使用 * 参考リンク [#reference] - [https://docs.oracle.com/javase/jp/8/docs/api/javax/swing/table/JTableHeader.html#getToolTipText-java.awt.event.MouseEvent- JTableHeader#getToolTipText() (Java Platform SE 8)] - [[JTableのTooltipsを行ごとに変更>Swing/RowTooltips]] - [[JTableのセルがクリップされている場合のみJToolTipを表示>Swing/ClippedCellTooltips]] * コメント [#comment] #comment - 文字列がクリップされている場合だけ`JToolTip`を表示する -- &user(aterai); &new{2009-10-07 (水) 01:00:19}; -- [[JTableのセルがクリップされている場合のみJToolTipを表示>Swing/ClippedCellTooltips]]に移動 -- &user(aterai); &new{2009-10-12 (月) 17:43:41}; #comment