JFileChooser上的Windows外观布局比Nimbus等其他外观更好。
因此,我正在寻找一种方法,可以在系统外观的基础上使用Nimbus或其他主题。
这是否可能?如果可能,应该如何实现?
JFileChooser上的Windows外观布局比Nimbus等其他外观更好。
因此,我正在寻找一种方法,可以在系统外观的基础上使用Nimbus或其他主题。
这是否可能?如果可能,应该如何实现?
package test;
import java.awt.Component;
import javax.swing.JComponent;
import javax.swing.JFileChooser;
import javax.swing.UIManager;
import javax.swing.plaf.nimbus.NimbusLookAndFeel; //Or use com.sun.... if you are using JDK < 7
public class LAFTester
{
public static void main(String... args)
throws Exception
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
JFileChooser chooser = new JFileChooser();
chooser.updateUI(); //Create UI objects
UIManager.setLookAndFeel(NimbusLookAndFeel.class.getName()); //Now set look and feel
//UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName()); //works with metal as well
refreshUI(chooser, false);
chooser.showOpenDialog(null);
}
private static void refreshUI(JComponent c, boolean includeParent)
{
if (includeParent)
c.updateUI();
for (int i = 0; i < c.getComponentCount(); i++)
{
Component child = c.getComponent(i);
if (child instanceof JComponent)
{
refreshUI((JComponent)child, true);
}
}
}
}
我猜你在谈论Windows文件选择器对话框左侧的面板,该面板包含桌面
、我的电脑
和我的文档
图标?
好吧,我怀疑这是无法实现的,因为它是与外观相关的。这是添加到Windows外观中的,因为这就是Windows平台文件选择器的外观。它不支持其他外观。