在 Java 开发过程中支持双向字符集语言(BiDi) - 编程入门网
为从右到左 RTL 方向的。开发人员可以采用下面这段示例程序来使 JFrame 的标题 栏变为从右到左 RTL 方向。
应用这段代码以后,图 1 的应用程序标题栏将会变成如图 2 所示: 图 2. JFrame 标题栏从右到左显示 需要指出的是,应用这段代码以后,JFrame 的外观将不再遵循操作系统界面风格。用户 需要自己决定是否采用这段代码来实现 JFrame 标题栏的 RTL,还是保持界面整体的风格不 变。 javax.swing.Box javax.swing.Box 是一个轻量级的,可以放置各种简单控件(例如 JButton)的容器。使 用 Box 可以比较方便地控制其中控件的布局。然而,使用 Box 也带来了 BiDi 上面的一个 缺憾,applyComponentOrientation 设置的全局方向不能应用到 Box 里面包含的各个控件上 。 图 3. Box BiDi 从左到右显示 在 Java 开发过程中支持双向字符集语言(BiDi)(4)时间:2011-04-30 IBM 赵一三为了使 Box 里面的控件布局符合 ComponentOrientation 的取值,开发人员必须通过如 下示例代码来生成 Box 的实例对象。
这样 Box 里面包含的控件将遵循这个应用程序的全局方向,如下图所示: 图 4. Box BiDi 从右到左显示 在 Java 开发过程中支持双向字符集语言(BiDi)(5)时间:2011-04-30 IBM 赵一三javax.swing.JComboBox 即便 ComponentOrientation 应用了从右到左 RTL 的全局方向,javax.swing.JComboBox 控件里面的文字缺省还是按照左对齐的方式显示。如下图所示: 图 5. JComboBox 内的文字左对齐 开发人员可以调用如下代码生成 JComboBox 的实例对象,强制 JComboBox 对象的文字遵 循右对齐的方向。如图 6 所示:
图 6. JComboBox 内的文字右对齐 javax.swing.JTable javax.swing.JTable 的表格里面的内容在缺省情况下也不会按照 ComponentOrientation 取值进行显示。即便 ComponentOrientation 是从右到左 RTL,JTable 还是会如下图所示显 示内容: 图 7. JTable 内的文字左对齐 开发人员可以调用如下代码生成 JTable 的实例对象,强制 JTable 对象里面的文字遵循 右对齐的方向。如图 8 所示
图 8. JTable 内的文字右对齐 在 Java 开发过程中支持双向字符集语言(BiDi)(6)时间:2011-04-30 IBM 赵一三对齐方式 javax.swing.JLabel 是一个 GUI 开发中非常常用的控件,可以用来展示界面上的文字内 容。通常来讲,使用 JLabel 控件是遵循 ComponentOrientation 指定的全局方向的。但是 如果用户强制使用代码指定了控件的显示方向,新的设置将覆盖 ComponentOrientation 的 全局方向。
|
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |