Swing/HeaderTooltips のバックアップの現在との差分(No.7)
TITLE:JTableHeaderのTooltipsを列ごとに変更
Posted by aterai at 2005-05-23
JTableHeaderのTooltipsを列ごとに変更
JTableHeaderのTooltipsが、カーソルのある列の内容などを表示するようにします。- 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:
概要
JTableHeader
のTooltips
がカーソルのある列の内容などを表示するようにします。
- &jnlp;
- &jar;
- &zip;
Screenshot
Advertisement
サンプルコード
サンプルコード
#spandel
JTableHeader header = new JTableHeader(table.getColumnModel()) {
#spanend
public String getToolTipText(MouseEvent e) {
int c = columnAtPoint(e.getPoint());
return getTable().getColumnName(c)
+"################################";
#spanadd
JTable table = new JTable(model);
#spanend
#spanadd
table.setTableHeader(new JTableHeader(table.getColumnModel()) {
#spanend
@Override public String getToolTipText(MouseEvent e) {
int i = columnAtPoint(e.getPoint());
TableColumn c = getColumnModel().getColumn(i);
return String.format("%s (width=%dpx)", c.getHeaderValue(), c.getWidth());
}
#spandel
};
#spanend
#spandel
table.setTableHeader(header);
#spanend
#spanadd
});
#spanend
View in GitHub: Java, Kotlin解説
上記のサンプルでは、JTableHeader#getToolTipTextメソッドをオーバーライドして、マウスカーソルの下にあるカラムヘッダの名前などをTooltipsとして返すようにしています。解説
-
JTableHeader#getToolTipText(MouseEvent)
メソッドをオーバーライドしてマウスカーソルの下にあるカラムヘッダを取得- その名前とその幅を
TooltipsText
として使用
- その名前とその幅を
参考リンク
参考リンク
- JTableHeader#getToolTipText() (Java Platform SE 8)
- JTableのTooltipsを行ごとに変更
- JTableのセルがクリップされている場合のみJToolTipを表示
コメント
- 文字列がクリップされている場合だけ、ToolTipを表示する -- aterai
コメント
- 文字列がクリップされている場合だけ
JToolTip
を表示する -- aterai- JTableのセルがクリップされている場合のみJToolTipを表示に移動 -- aterai