java.awt

接口
异常
错误
java.lang.Object
  继承者 java.awt.ComponentOrientation
所有已实现的接口:
Serializable

public final class ComponentOrientation
     
extends Object
implements Serializable

ComponentOrientation 类封装语言敏感的方向,用于排序组件或文本内容。使用它可反映西方字母表、中东字母表(如希伯来语)和远东字母表(如日语)之间此种排序的差别。

从根本上讲,此类管理在行中布局的各项(如字符),以及各行在块中的布局。这也适用于小部件中的各项:例如在一个复选框中,相对于文本而言该框的定位。

现代语言中使用了 4 种不同的方向,如下表所示。

 LT          RT          TL          TR   
 A B C       C B A       A D G       G D A
 D E F       F E D       B E H       H E B
 G H I       I H G       C F I       I F C

(在标题中,两字母缩写中的首个字母表示项的方向,第二个字母表示行的方向。例如,LT 意味着“项从左到右,行从上到下”,TL 则意味着“项从上到下,行从左到右”,依此类推。)

方向有:

  • LT - 西欧(可选用于日语、汉语、韩语)
  • RT - 中东(阿拉伯语、希伯来语)
  • TR - 日语、汉语、韩语
  • TL - 蒙古语
其视图和控制器代码依靠方向的组件应该使用 isLeftToRight()isHorizontal() 方法来确定其行为。这些组件不应包括类似于开关的代码来切换常量,如:
 if (orientation == LEFT_TO_RIGHT) {
   ...
 } else if (orientation == RIGHT_TO_LEFT) {
   ...
 } else {
   // Oops
 }
 
因为以后可能添加更多的常量,以及无法保证方向对象是惟一的,所以这是不安全的。

另请参见:
序列化表格

字段摘要
static ComponentOrientation LEFT_TO_RIGHT
          各项从左到右布局,各行从上到下,示例:英语、法语。
static ComponentOrientation RIGHT_TO_LEFT
          各项从右到左布局,各行从上到下,示例:阿拉伯语、希伯来语。
static ComponentOrientation UNKNOWN
          表示尚未设置组件的方向。
 
方法摘要
static ComponentOrientation getOrientation(Locale locale)
          返回适合于给定区域的方向。
static ComponentOrientation getOrientation(ResourceBundle bdl)
          已过时。 在 J2SE 1.4 中,使用 getOrientation(java.util.Locale)
 boolean isHorizontal()
          各行是水平的?这将为水平的、从左到右的书写系统(如罗马语)返回 true。
 boolean isLeftToRight()
          水平行:各项从左到右布局?
垂直行:各行从左到右布局?
这将为水平的、从左到右的书写系统(如罗马语)返回 true。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

LEFT_TO_RIGHT

public static final ComponentOrientation LEFT_TO_RIGHT
各项从左到右布局,各行从上到下,示例:英语、法语。


RIGHT_TO_LEFT

public static final ComponentOrientation RIGHT_TO_LEFT
各项从右到左布局,各行从上到下,示例:阿拉伯语、希伯来语。


UNKNOWN

public static final ComponentOrientation UNKNOWN
表示尚未设置组件的方向。要保持现有应用程序的行为,isLeftToRight 将为此值返回 true。

方法详细信息

isHorizontal

public boolean isHorizontal()
各行是水平的?这将为水平的、从左到右的书写系统(如罗马语)返回 true。


isLeftToRight

public boolean isLeftToRight()
水平行:各项从左到右布局?
垂直行:各行从左到右布局?
这将为水平的、从左到右的书写系统(如罗马语)返回 true。


getOrientation

public static ComponentOrientation getOrientation(Locale locale)
返回适合于给定区域的方向。

参数:
locale - 指定的区域

getOrientation

@Deprecated
public static ComponentOrientation getOrientation(ResourceBundle bdl)
已过时。  在 J2SE 1.4 中,使用 getOrientation(java.util.Locale)

返回适合于给定 ResourceBundle 的本地化的方向。按下列顺序尝试三种方法:
  1. 使用字符串 "Orientation" 作为关键字从 ResourceBundle 中检索 ComponentOrientation 对象。
  2. 使用 ResourceBundle.getLocale 确定资源包的区域,然后返回该区域的方向。
  3. 返回默认区域的方向。