模块  java.desktop
软件包  java.awt

Class TextComponent

  • 实现的所有接口
    ImageObserverMenuContainerSerializableAccessible
    已知直接子类:
    TextAreaTextField

    public class TextComponent
    extends Component
    implements Accessible
    TextComponent类是允许编辑某些文本的任何组件的超类。

    文本组件包含一串文本。 TextComponent类定义了一组方法,用于确定此文本是否可编辑。 如果组件是可编辑的,则它定义了另一组支持文本插入插入符的方法。

    此外,该类定义了用于维护文本中当前选择的方法。 文本选择是组件文本的子字符串,是编辑操作的目标。 它也被称为选定的文本

    从以下版本开始:
    1.0
    另请参见:
    Serialized Form
    • 字段详细信息

      • textListener

        protected transient TextListener textListener
        将从此对象接收事件的侦听器列表。
    • 方法详细信息

      • enableInputMethods

        public void enableInputMethods​(boolean enable)
        启用或禁用此文本组件的输入法支持。 如果启用了输入法支持,并且文本组件也处理键事件,则传入事件将提供给当前输入方法,并且只有组件处理或者如果输入方法不使用它们,则会将其分派给其侦听器。 默认情况下是否以及如何启用或禁用对此文本组件的输入方法支持取决于实现。
        重写:
        enableInputMethods在课程 Component
        参数
        enable - true表示启用,false表示禁用
        从以下版本开始:
        1.2
        另请参见:
        Component.processKeyEvent(java.awt.event.KeyEvent)
      • addNotify

        public void addNotify()
        通过将此组件连接到本机屏幕资源,可以显示此组件。 此方法由工具包在内部调用,不应由程序直接调用。
        重写:
        addNotify在类 Component
        另请参见:
        removeNotify()
      • setText

        public void setText​(String t)
        将此文本组件显示的文本设置为指定的文本。
        参数
        t - 新文本; 如果此参数为null则文本设置为空字符串“”
        另请参见:
        getText()
      • getText

        public String getText()
        返回此文本组件显示的文本。 默认情况下,这是一个空字符串。
        结果
        这个值 TextComponent
        另请参见:
        setText(java.lang.String)
      • getSelectedText

        public String getSelectedText()
        返回此文本组件显示的文本中的选定文本。
        结果
        此文本组件的选定文本
        另请参见:
        select(int, int)
      • isEditable

        public boolean isEditable()
        指示此文本组件是否可编辑。
        结果
        true如果此文本组件是可编辑的; 否则为false
        从以下版本开始:
        1.0
        另请参见:
        setEditable(boolean)
      • setEditable

        public void setEditable​(boolean b)
        设置用于确定此文本组件是否可编辑的标志。

        如果该标志设置为true ,则此文本组件将成为用户可编辑的。 如果该标志设置为false ,则用户无法更改此文本组件的文本。 默认情况下,不可编辑的文本组件的背景颜色为SystemColor.control。 可以通过调用setBackground来覆盖此默认值。

        参数
        b - 一个标志,指示此文本组件是否可由用户编辑。
        从以下版本开始:
        1.0
        另请参见:
        isEditable()
      • getBackground

        public Color getBackground()
        获取此文本组件的背景颜色。 默认情况下,不可编辑的文本组件的背景颜色为SystemColor.control。 可以通过调用setBackground来覆盖此默认值。
        重写:
        getBackground在类 Component
        结果
        此文本组件的背景颜色。 如果此文本组件没有背景颜色,则返回其父级的背景颜色。
        从以下版本开始:
        1.0
        另请参见:
        setBackground(Color)
      • setBackground

        public void setBackground​(Color c)
        设置此文本组件的背景颜色。
        重写:
        setBackground在课程 Component
        参数
        c - 成为此文本组件颜色的颜色。 如果此参数为null,则此文本组件将继承其父项的背景颜色。
        从以下版本开始:
        1.0
        另请参见:
        getBackground()
      • getSelectionStart

        public int getSelectionStart()
        获取此文本组件中所选文本的起始位置。
        结果
        所选文本的开始位置
        另请参见:
        setSelectionStart(int)getSelectionEnd()
      • setSelectionStart

        public void setSelectionStart​(int selectionStart)
        将此文本组件的选择开始设置为指定位置。 新起点被限制在当前选择结束时或之前。 它也不能设置为小于零,即组件文本的开头。 如果调用者提供超出范围的selectionStart的值,则该方法将以静默方式强制执行这些约束,并且不会出现故障。
        参数
        selectionStart - 所选文本的开始位置
        从以下版本开始:
        1.1
        另请参见:
        getSelectionStart()setSelectionEnd(int)
      • getSelectionEnd

        public int getSelectionEnd()
        获取此文本组件中所选文本的结束位置。
        结果
        所选文本的结束位置
        另请参见:
        setSelectionEnd(int)getSelectionStart()
      • setSelectionEnd

        public void setSelectionEnd​(int selectionEnd)
        将此文本组件的选择结束设置为指定位置。 新的终点被限制在当前选择开始时或之后。 它也不能超出组件文本的末尾。 如果调用者提供超出范围的selectionEnd的值,则该方法将以静默方式强制执行这些约束,并且不会失败。
        参数
        selectionEnd - 所选文本的结束位置
        从以下版本开始:
        1.1
        另请参见:
        getSelectionEnd()setSelectionStart(int)
      • select

        public void select​(int selectionStart,
                           int selectionEnd)
        选择指定的开始和结束位置之间的文本。

        此方法设置所选文本的开始和结束位置,强制执行起始位置必须大于或等于零的限制。 结束位置必须大于或等于起始位置,并且小于或等于文本组件文本的长度。 字符位置从零开始编制索引。 选择的长度为endPosition - startPosition ,因此未选中endPosition处的字符。 如果所选文本的开始和结束位置相等,则取消选择所有文本。

        如果调用者提供的值不一致或超出范围,则该方法将以静默方式强制执行这些约束,并且不会出现故障。 具体来说,如果开始位置或结束位置大于文本的长度,则将其重置为等于文本长度。 如果起始位置小于零,则将其重置为零,如果结束位置小于起始位置,则将其重置为起始位置。

        参数
        selectionStart - 要选择的第一个字符( char值)的从零开始的索引
        selectionEnd - 要选择的文本从零开始的结束位置; 字符( char在值) selectionEnd未选中
        另请参见:
        setSelectionStart(int)setSelectionEnd(int)selectAll()
      • selectAll

        public void selectAll()
        选择此文本组件中的所有文本。
        另请参见:
        select(int, int)
      • setCaretPosition

        public void setCaretPosition​(int position)
        设置文本插入插入符的位置。 插入符号位置被限制在介于0和文本的最后一个字符之间(包括0和最后一个字符)。 如果传入的值大于此范围,则将值设置为最后一个字符(如果TextComponent包含任何文本, TextComponent 0),并且不返回任何错误。 如果传入的值小于0,则抛出IllegalArgumentException
        参数
        position - 文本插入插入符的位置
        异常
        IllegalArgumentException - 如果 position小于零
        从以下版本开始:
        1.1
      • getCaretPosition

        public int getCaretPosition()
        返回文本插入插入符的位置。 插入符号位置被限制在介于0和文本的最后一个字符之间(包括0和最后一个字符)。 如果尚未设置文本或插入符,则默认插入符号位置为0。
        结果
        文本插入插入符号的位置
        从以下版本开始:
        1.1
        另请参见:
        setCaretPosition(int)
      • getListeners

        public <T extends EventListener> T[] getListeners​(<T> listenerType)
        返回当前注册的所有对象的数组FooListener在这个S TextComponent FooListener s使用addFooListener方法注册。

        您可以使用类文字指定listenerType参数,例如FooListener.class 例如,您可以使用以下代码查询TextComponent t的文本侦听器:

          TextListener[] tls = (TextListener[])(t.getListeners(TextListener.class)); 
        如果不存在此类侦听器,则此方法返回空数组。
        重写:
        getListeners在课程 Component
        参数类型
        T - 侦听器的类型
        参数
        listenerType - 请求的侦听器类型; 此参数应指定从java.util.EventListener下降的接口
        结果
        在此文本组件上注册为 FooListener的所有对象的数组,如果未添加此类侦听器,则为空数组
        异常
        ClassCastException - 如果 listenerType未指定实现 java.util.EventListener的类或接口
        从以下版本开始:
        1.3
        另请参见:
        getTextListeners()
      • processTextEvent

        protected void processTextEvent​(TextEvent e)
        处理在此文本组件上发生的文本事件,方法是将它们分派给任何已注册的TextListener对象。

        注意:除非为此组件启用了文本事件,否则不会调用此方法。 发生以下任一情况时会发生这种情况:

        • TextListener对象是通过addTextListener注册
        • 文本事件通过enableEvents启用

        请注意,如果事件参数为null则行为未指定,可能会导致异常。

        参数
        e - 文本事件
        另请参见:
        Component.enableEvents(long)
      • paramString

        protected String paramString()
        返回表示此TextComponent的状态的字符串。 此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null
        重写:
        paramString在课程 Component
        结果
        此文本组件的参数字符串
      • getAccessibleContext

        public AccessibleContext getAccessibleContext()
        获取与此TextComponent关联的AccessibleContext。 对于文本组件,AccessibleContext采用AccessibleAWTTextComponent的形式。 如有必要,将创建一个新的AccessibleAWTTextComponent实例。
        Specified by:
        getAccessibleContext在接口 Accessible
        重写:
        getAccessibleContext在课程 Component
        结果
        一个AccessibleAWTTextComponent,用作此TextComponent的AccessibleContext
        从以下版本开始:
        1.3