如何从 NetBeans 桌面应用程序为阿拉伯语制作我的 Java Swing GUI 组件 [从右到左]?
ahmed
问问题
5792 次
4 回答
9
难道你只需要使用:
Component.setComponentOrientation( ComponentOrientation.RIGHT_TO_LEFT )
我相信swing组件都已经支持RTL了,不是吗?
不过,不确定您将如何/在哪里对 netbeans 执行此操作。
于 2008-12-10T01:17:11.233 回答
5
的呼唤
Component.setComponentOrientation( ComponentOrientation.RIGHT_TO_LEFT )
应该做的伎俩。但请务必在布局中使用 SwingConstants LEADING 和 TRAILING 而不是 LEFT 和 RIGHT。GridBagConstraints.LINE_START 或 LINE_END 而不是 WEST 或 EAST 也是如此,可能还有一些我忘记提及的类似情况。
于 2008-12-10T17:58:42.210 回答
1
您可以使用对齐,但如果您的文本中嵌入了英文字母或数字,则无法处理复杂性。
最好使用某种样式的文本小部件,甚至是嵌入式 HTML/富文本查看器。
我不认为标准的 JLabels 可以处理复杂性。
于 2008-12-10T00:51:51.767 回答
0
如果您在 contentPane 内的面板中有组件,则可以使用它
Component[] component = contentPane.getComponents();
for(int i=0; i<component.length; i++){
component[i].applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
Component[] cp = ((Container) component[i]).getComponents();
for(int j=0; j<cp.length; j++){
try{
((Component) ((JComboBox) cp[j]).getRenderer()).applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
}catch(Exception e){
continue;
}
}
}
于 2014-08-10T08:42:26.640 回答