Java 可排序JTable标题的小三角形图标来自哪里?

Java 可排序JTable标题的小三角形图标来自哪里?,java,swing,Java,Swing,我正在编写一个自定义组件,它需要使用可排序JTable头的小三角形图标。也许它不是一个真正的图标文件,而是某个类绘制的图形。绘制这些图形将是特定于当前外观的子类的工作。一个L&F可能从文件中加载,而另一个L&F则将其绘制为矢量图形。我相信排序图标来自外观。例如,在Windows外观中,WindowsTableHeaderUI查找以下内容以绘制适当的图标。对于升序: UIManager.getIcon("Table.ascendingSortIcon"); 对于降序: UIManager.get

我正在编写一个自定义组件,它需要使用可排序JTable头的小三角形图标。也许它不是一个真正的图标文件,而是某个类绘制的图形。

绘制这些图形将是特定于当前外观的子类的工作。一个L&F可能从文件中加载,而另一个L&F则将其绘制为矢量图形。

我相信排序图标来自外观。例如,在Windows外观中,
WindowsTableHeaderUI
查找以下内容以绘制适当的图标。对于升序:

UIManager.getIcon("Table.ascendingSortIcon");
对于降序:

UIManager.getIcon("Table.descendingSortIcon");
BasicLookAndFeel
为这些属性注册了一个值(因此,如果使用类似的调用,很可能会有一些东西),正如@Michael Borgwardt所指出的(通过从他的答案中得出结论),这是无法保证的,因为任何给定的外观都可能选择放弃
UIManager
并绘制自己的图形


尽管如此,还是值得一试,看看它是否能满足你的需要。

@Ash:谢谢。它确实解决了我的问题!我坚持“金属”L&F,一切都会好起来的。