在 Java 开发过程中支持双向字符集语言(BiDi)
2010-03-15 00:00:00 来源:WEB开发网查看原图(大图)
开发人员可以调用如下代码生成 JTable 的实例对象,强制 JTable 对象里面的文字遵循右对齐的方向。如图 8 所示
JTable table= new JTable(...);
//align all the table column data to RTL in case Arabic/Hebrew locale
if (!ComponentOrientation.getOrientation(Locale.getDefault()).isLeftToRight()){
((JLabel)table.getDefaultRenderer(String.class)).setHorizontalAlignment(JLabel.RIGHT);
}
图 8. JTable 内的文字右对齐
查看原图(大图)
对齐方式
javax.swing.JLabel 是一个 GUI 开发中非常常用的控件,可以用来展示界面上的文字内容。通常来讲,使用 JLabel 控件是遵循 ComponentOrientation 指定的全局方向的。但是如果用户强制使用代码指定了控件的显示方向,新的设置将覆盖 ComponentOrientation 的全局方向。
JLabel label = new JLabel(text, icon, SwingConstants.LEFT);
…
label.setHorizontalAlignment(SwingConstants.LEFT);
为了使控件能够按照 ComponentOrientation 指定的全局方向显示内容,开发人员应该避免在生成控件或者指定对齐方式的时候,使用左常量 SwingConstants.LEFT,右常量 SwingConstants.RIGHT。开发人员应该使用专门支持 BiDi 的常量 SwingConstants.LEADING,SwingConstants.TRAILING 来指定对齐方式。
更多精彩
赞助商链接