java – 如何让Vista的讲述人将我的Swing组件读回给我?
作者:互联网
我正在尝试为Swing实现一个非常非常简单的可访问性测试,这样我就可以了解为我们已经建立的Swing应用程序提供可访问性支持的工作量.
我有最简单的Swing程序,我在Windows Vista中使用Narrator来尝试屏幕阅读其GUI.
public class ReadableFrame extends JFrame {
private ReadableFrame() {
super();
setTitle( "Banjollity's Window" );
setSize( 640, 580 );
setDefaultCloseOperation( WindowConstants.EXIT_ON_CLOSE );
JButton button = new JButton( "Hello World" );
getContentPane().setLayout( new FlowLayout() );
getContentPane().add( button );
setVisible( true );
}
/**
* @param args
*/
public static void main( String[] args ) {
new ReadableFrame();
}
}
讲述者可以阅读标题,但没有别的.我得到“Banjollity的窗口,不包含其他已知的控件”.如果我用AWT按钮替换Swing JButton,如下所示:
Button button = new Button( "Hello World" );
…然后它正常工作,我得到“Banjollity的窗口,专注于Hello World按钮,包含Hello World按钮”.
我已经尝试将Java Access Bridge安装到JRE / lib / ext(我强烈怀疑这是正常的,因为我的程序拒绝启动我的应用程序,直到我把DLL放在Windows / System32中)但无济于事.
有人可以帮忙,或分享一些建议吗?
解决方法:
你没有,Narator是一个糟糕的屏幕阅读器.您需要安装java访问桥,然后使用jaws作为演示一次运行40分钟,或使用NVDA这是一个也支持Java的免费屏幕阅读器.
标签:java,windows,accessibility,windows-vista,narrator 来源: https://codeday.me/bug/20190627/1301921.html