高对比度模式下的JTree视图

时间:2010-10-14 09:05:03

标签: java swing jtree section508 high-contrast

我有一个与JTree swing组件有关的问题, 我想在Windows高对比度模式下使用JTree,但它根本不会根据windows高对比度主题显示树节点。


Jtree视图在普通模式
alt Text


Jtree视图在高对比度模式
alt text


Eclipse Package Explorer视图在普通模式
alt text


Eclipse Package Explorer视图在高对比度模式
alt text

我想让我的应用程序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
    }

感谢您的帮助!!

2 个答案:

答案 0 :(得分:2)

根据这个issue是Swing L& F实现中的这个错误。可以通过修改Windows L& F并将其作为自己提供,或者使用支持此功能的不同L& F来接受这一点。

答案 1 :(得分:1)

我在工具包调用pscode.org/prop/form.html的帮助下实现了这一点 - 获取更改字体和字体大小的详细信息并应用于jtree