• category: swing folder: TableSortIcon title: JTableのソートアイコンを変更 tags: [JTable, JTableHeader, Icon, UIManager] author: aterai pubdate: 2008-07-07T11:40:12+09:00 description: JTableのソートアイコンを非表示にしたり、別の画像に変更します。 image: https://lh6.googleusercontent.com/_9Z4BYR88imo/TQTUsaUYVkI/AAAAAAAAAmc/34Qz14LqOGc/s800/TableSortIcon.png

概要

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

サンプルコード

Icon emptyIcon = new Icon() {
  @Override public void paintIcon(Component c, Graphics g, int x, int y) {}

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

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

解説

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

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

参考リンク

コメント