我有一个与JTree swing组件有关的问题, 我想在Windows高对比度模式下使用JTree,但它根本不会根据windows高对比度主题显示树节点。
Jtree视图在普通模式下
Jtree视图在高对比度模式下
Eclipse Package Explorer视图在普通模式下
Eclipse Package Explorer视图在高对比度模式下
我想让我的应用程序jtree视图与eclipse的“高对比度”视图相同。
任何人都可以指导这个吗? 我正在尝试编写一个逻辑:
//调用此应用程序加载 - 或通过某种监听器
Toolkit toolkit = Toolkit.getDefaultToolkit();
Boolean highContrast = (Boolean)toolkit.getDesktopProperty( "win.highContrast.on" );
boolean flag=highContrast.booleanValue();
if(flag){
// do stuff for high contrast
}
else{
// show in normal mode
}
感谢您的帮助!!
答案 0 :(得分:2)
根据这个issue是Swing L& F实现中的这个错误。可以通过修改Windows L& F并将其作为自己提供,或者使用支持此功能的不同L& F来接受这一点。
答案 1 :(得分:1)
我在工具包调用pscode.org/prop/form.html的帮助下实现了这一点 - 获取更改字体和字体大小的详细信息并应用于jtree