概要

JTableのソートアイコンを非表示にしたり、別の画像に変更します。

サンプルコード

class EmptyIcon implements Icon {
  @Override public void paintIcon(Component c, Graphics g, int x, int y) {
    /* Empty icon */
  }

  @Override public int getIconWidth() {
    return 0;
  }

  @Override public int getIconHeight() {
    return 0;
  }
}
// ...
UIManager.put("Table.ascendingSortIcon", new IconUIResource(new EmptyIcon()));
UIManager.put("Table.descendingSortIcon", new IconUIResource(new EmptyIcon()));
View in GitHub: Java, Kotlin

解説

上記のサンプルでは、UIManagerを使用してJTableのヘッダに表示されるソートアイコンを変更しています。

  • Default
    • UIManager.getLookAndFeelDefaults().getIcon("Table.ascendingSortIcon")などで取得したLookAndFeelでのデフォルトソートアイコンを表示
  • Empty
    • サイズ0Iconでソートアイコンを非表示化
  • Custom
    • 透過png画像から生成したソートアイコンを表示

参考リンク

コメント