- java.lang.Object
-
- javax.accessibility.AccessibleContext
-
- java.awt.Component.AccessibleAWTComponent
-
- java.awt.Container.AccessibleAWTContainer
-
- javax.swing.JComponent.AccessibleJComponent
-
- javax.swing.text.JTextComponent.AccessibleJTextComponent
-
- All Implemented Interfaces:
-
Serializable
,EventListener
,AccessibleAction
,AccessibleComponent
,AccessibleEditableText
,AccessibleExtendedComponent
,AccessibleExtendedText
,AccessibleText
,CaretListener
,DocumentListener
- 已知直接子类:
-
JEditorPane.AccessibleJEditorPane
,JTextArea.AccessibleJTextArea
,JTextField.AccessibleJTextField
- Enclosing class:
- JTextComponent
public class JTextComponent.AccessibleJTextComponent extends JComponent.AccessibleJComponent implements AccessibleText, CaretListener, DocumentListener, AccessibleAction, AccessibleEditableText, AccessibleExtendedText
该类实现JTextComponent
类的可访问性支持。 它提供了适用于菜单用户界面元素的Java Accessibility API的实现。警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,支持所有JavaBeans的长期存储已被添加到
java.beans
包中。 请参阅XMLEncoder
。- 另请参见:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class java.awt.Component.AccessibleAWTComponent
Component.AccessibleAWTComponent.AccessibleAWTComponentHandler, Component.AccessibleAWTComponent.AccessibleAWTFocusHandler
-
Nested classes/interfaces inherited from class javax.swing.JComponent.AccessibleJComponent
JComponent.AccessibleJComponent.AccessibleContainerHandler, JComponent.AccessibleJComponent.AccessibleFocusHandler
-
-
Field Summary
-
Fields inherited from interface javax.accessibility.AccessibleAction
CLICK, DECREMENT, INCREMENT, TOGGLE_EXPAND, TOGGLE_POPUP
-
Fields inherited from class javax.accessibility.AccessibleContext
ACCESSIBLE_ACTION_PROPERTY, ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY, ACCESSIBLE_CARET_PROPERTY, ACCESSIBLE_CHILD_PROPERTY, ACCESSIBLE_COMPONENT_BOUNDS_CHANGED, ACCESSIBLE_DESCRIPTION_PROPERTY, ACCESSIBLE_HYPERTEXT_OFFSET, ACCESSIBLE_INVALIDATE_CHILDREN, ACCESSIBLE_NAME_PROPERTY, ACCESSIBLE_SELECTION_PROPERTY, ACCESSIBLE_STATE_PROPERTY, ACCESSIBLE_TABLE_CAPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_COLUMN_HEADER_CHANGED, ACCESSIBLE_TABLE_MODEL_CHANGED, ACCESSIBLE_TABLE_ROW_DESCRIPTION_CHANGED, ACCESSIBLE_TABLE_ROW_HEADER_CHANGED, ACCESSIBLE_TABLE_SUMMARY_CHANGED, ACCESSIBLE_TEXT_ATTRIBUTES_CHANGED, ACCESSIBLE_TEXT_PROPERTY, ACCESSIBLE_VALUE_PROPERTY, ACCESSIBLE_VISIBLE_DATA_PROPERTY, accessibleDescription, accessibleName, accessibleParent
-
Fields inherited from interface javax.accessibility.AccessibleExtendedText
ATTRIBUTE_RUN, LINE
-
Fields inherited from interface javax.accessibility.AccessibleText
CHARACTER, SENTENCE, WORD
-
Fields inherited from class java.awt.Component.AccessibleAWTComponent
accessibleAWTComponentHandler, accessibleAWTFocusHandler
-
Fields inherited from class java.awt.Container.AccessibleAWTContainer
accessibleContainerHandler
-
Fields inherited from class javax.swing.JComponent.AccessibleJComponent
accessibleFocusHandler
-
-
构造方法摘要
构造方法 Constructor 描述 AccessibleJTextComponent()
构造AccessibleJTextComponent。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 void
caretUpdate(CaretEvent e)
处理插入符更新(触发适当的属性更改事件,它们是AccessibleContext.ACCESSIBLE_CARET_PROPERTY和AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY)。void
changedUpdate(DocumentEvent e)
处理文档删除(触发适当的属性更改事件,即AccessibleContext.ACCESSIBLE_TEXT_PROPERTY)。void
cut(int startIndex, int endIndex)
将两个索引之间的文本剪切到系统剪贴板中。void
delete(int startIndex, int endIndex)
删除两个索引之间的文本boolean
doAccessibleAction(int i)
对对象执行指定的ActionAccessibleAction
getAccessibleAction()
获取支持一个或多个操作的此对象关联的AccessibleAction
。int
getAccessibleActionCount()
返回此对象中可用操作的数量如果有多个可访问的操作数,则第一个被视为对象的“默认”操作。String
getAccessibleActionDescription(int i)
返回对象的指定操作的描述。AccessibleEditableText
getAccessibleEditableText()
返回此文本组件的AccessibleEditableText接口。AccessibleRole
getAccessibleRole()
获得此对象的作用。AccessibleStateSet
getAccessibleStateSet()
获取JTextComponent的状态集。AccessibleText
getAccessibleText()
获取与此对象关联的AccessibleText。String
getAfterIndex(int part, int index)
返回给定索引后的String。String
getAtIndex(int part, int index)
返回给定索引处的String。String
getBeforeIndex(int part, int index)
返回给定索引之前的String。int
getCaretPosition()
返回插入符号的从零开始的偏移量。AttributeSet
getCharacterAttribute(int i)
返回给定字符的AttributeSet(在给定索引处)。Rectangle
getCharacterBounds(int i)
将给定索引处的字符的边框确定为字符串。int
getCharCount()
返回字符数(有效索引)int
getIndexAtPoint(Point p)
给定本地坐标点,返回该点下的字符从零开始的索引。String
getSelectedText()
返回所选文本的部分。int
getSelectionEnd()
返回所选文本中的结束偏移量。int
getSelectionStart()
返回所选文本中的起始偏移量。Rectangle
getTextBounds(int startIndex, int endIndex)
返回包含两个指标之间的文本的Rectangle
。String
getTextRange(int startIndex, int endIndex)
返回两个索引之间的文本字符串。AccessibleTextSequence
getTextSequenceAfter(int part, int index)
返回AccessibleTextSequence
给定后index
。AccessibleTextSequence
getTextSequenceAt(int part, int index)
返回AccessibleTextSequence
在给定index
。AccessibleTextSequence
getTextSequenceBefore(int part, int index)
返回AccessibleTextSequence
之前给定的index
。void
insertTextAtIndex(int index, String s)
在指定的索引处插入指定的字符串void
insertUpdate(DocumentEvent e)
处理文档插入(触发适当的属性更改事件AccessibleContext.ACCESSIBLE_TEXT_PROPERTY)。void
paste(int startIndex)
将文本从系统剪贴板粘贴到从指定索引开始的文本。void
removeUpdate(DocumentEvent e)
处理文档删除(触发适当的属性更改事件,即AccessibleContext.ACCESSIBLE_TEXT_PROPERTY)。void
replaceText(int startIndex, int endIndex, String s)
用指定的字符串替换两个索引之间的文本。void
selectText(int startIndex, int endIndex)
选择两个索引之间的文本。void
setAttributes(int startIndex, int endIndex, AttributeSet as)
为两个索引之间的文本设置属性。void
setTextContents(String s)
将文本内容设置为指定的字符串。-
Methods inherited from interface javax.accessibility.AccessibleComponent
addFocusListener, contains, getAccessibleAt, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible
-
Methods inherited from class javax.accessibility.AccessibleContext
firePropertyChange, getAccessibleIcon, getAccessibleRelationSet, getAccessibleSelection, getAccessibleTable, getAccessibleValue, setAccessibleDescription, setAccessibleName, setAccessibleParent
-
Methods inherited from class java.awt.Component.AccessibleAWTComponent
addFocusListener, contains, getAccessibleComponent, getAccessibleIndexInParent, getAccessibleParent, getBackground, getBounds, getCursor, getFont, getFontMetrics, getForeground, getLocale, getLocation, getLocationOnScreen, getSize, isEnabled, isFocusTraversable, isShowing, isVisible, removeFocusListener, requestFocus, setBackground, setBounds, setCursor, setEnabled, setFont, setForeground, setLocation, setSize, setVisible
-
Methods inherited from class java.awt.Container.AccessibleAWTContainer
getAccessibleAt
-
Methods inherited from class javax.swing.JComponent.AccessibleJComponent
addPropertyChangeListener, getAccessibleChild, getAccessibleChildrenCount, getAccessibleDescription, getAccessibleKeyBinding, getAccessibleName, getBorderTitle, getTitledBorderText, getToolTipText, removePropertyChangeListener
-
-
-
-
方法详细信息
-
caretUpdate
public void caretUpdate(CaretEvent e)
处理插入符更新(触发适当的属性更改事件,它们是AccessibleContext.ACCESSIBLE_CARET_PROPERTY和AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY)。 这可以在内部跟踪点位置。 当插入符号移动时,内部位置在触发事件之后被更新。- Specified by:
-
caretUpdate
接口CaretListener
- 参数
-
e
- CaretEvent
-
insertUpdate
public void insertUpdate(DocumentEvent e)
处理文档插入(触发适当的属性更改事件AccessibleContext.ACCESSIBLE_TEXT_PROPERTY)。 通过事件跟踪更改的偏移量。- Specified by:
-
insertUpdate
接口DocumentListener
- 参数
-
e
- DocumentEvent
-
removeUpdate
public void removeUpdate(DocumentEvent e)
处理文档删除(触发适当的属性更改事件,即AccessibleContext.ACCESSIBLE_TEXT_PROPERTY)。 通过事件跟踪更改的偏移量。- Specified by:
-
removeUpdate
在接口DocumentListener
- 参数
-
e
- DocumentEvent
-
changedUpdate
public void changedUpdate(DocumentEvent e)
处理文档删除(触发适当的属性更改事件,即AccessibleContext.ACCESSIBLE_TEXT_PROPERTY)。 通过事件跟踪更改的偏移量。- Specified by:
-
changedUpdate
在接口DocumentListener
- 参数
-
e
- DocumentEvent
-
getAccessibleStateSet
public AccessibleStateSet getAccessibleStateSet()
获取JTextComponent的状态集。 对象的AccessibleStateSet由一组唯一的AccessibleState组成。 对象的AccessibleStateSet的更改将导致为AccessibleContext.ACCESSIBLE_STATE_PROPERTY属性触发一个PropertyChangeEvent。- 重写:
-
getAccessibleStateSet
中的JComponent.AccessibleJComponent
- 结果
- 包含对象的当前状态集的AccessibleStateSet实例
- 另请参见:
-
AccessibleStateSet
,AccessibleState
,JComponent.AccessibleJComponent.addPropertyChangeListener(java.beans.PropertyChangeListener)
-
getAccessibleRole
public AccessibleRole getAccessibleRole()
获得此对象的作用。- 重写:
-
getAccessibleRole
在JComponent.AccessibleJComponent
- 结果
- AccessibleRole的一个实例描述对象的作用(AccessibleRole.TEXT)
- 另请参见:
-
AccessibleRole
-
getAccessibleText
public AccessibleText getAccessibleText()
获取与此对象关联的AccessibleText。 在该类的Java Accessibility API的实现中,返回此对象,该对象负责代表自身实现AccessibleText接口。- 重写:
-
getAccessibleText
类AccessibleContext
- 结果
- 这个对象
- 另请参见:
-
AccessibleText
-
getIndexAtPoint
public int getIndexAtPoint(Point p)
给定本地坐标点,返回该点下的字符从零开始的索引。 如果该点无效,此方法返回-1。- Specified by:
-
getIndexAtPoint
在接口AccessibleText
- 参数
-
p
- 本地坐标点 - 结果
- 点p处字符的从零开始的索引。
-
getCharacterBounds
public Rectangle getCharacterBounds(int i)
将给定索引处的字符的边框确定为字符串。 边界以局部坐标返回。 如果索引无效,则返回空矩形。 如果JTextComponent包含在JScrollPane中,则返回的屏幕坐标为“未旋转坐标”,在这种情况下,生成的矩形应与父坐标组合。 一个很好的算法是:Accessible a: AccessibleText at = a.getAccessibleText(); AccessibleComponent ac = a.getAccessibleComponent(); Rectangle r = at.getCharacterBounds(); Point p = ac.getLocation(); r.x += p.x; r.y += p.y;
注意:JTextComponent必须具有有效的大小(例如,已经被添加到其父容器的祖先容器是有效的顶级窗口),以使该方法能够返回有意义的(非空值)值。- Specified by:
-
getCharacterBounds
在接口AccessibleText
- 参数
-
i
- 字符串中的索引值为0 - 结果
- 字符边界框的屏幕坐标
-
getCharCount
public int getCharCount()
返回字符数(有效索引)- Specified by:
-
getCharCount
在接口AccessibleText
- 结果
- 字数≥0
-
getCaretPosition
public int getCaretPosition()
返回插入符号的从零开始的偏移量。 注意:插入符号右侧的字符将具有与偏移量相同的索引值(插入符号在两个字符之间)。- Specified by:
-
getCaretPosition
在接口AccessibleText
- 结果
- 插入符号的零基偏移量。
-
getCharacterAttribute
public AttributeSet getCharacterAttribute(int i)
返回给定字符的AttributeSet(在给定索引处)。- Specified by:
-
getCharacterAttribute
接口AccessibleText
- 参数
-
i
- 基于零的索引到文本 - 结果
- 字符的AttributeSet
-
getSelectionStart
public int getSelectionStart()
返回所选文本中的起始偏移量。 如果没有选择,但是有一个插入符号,开始和结束偏移将是一样的。 如果文本为空,则返回0,如果没有选择,返回插入位置。- Specified by:
-
getSelectionStart
在接口AccessibleText
- 结果
- 索引进入文本的开始选择¥0
-
getSelectionEnd
public int getSelectionEnd()
返回所选文本中的结束偏移量。 如果没有选择,但是有一个插入符号,开始和结束偏移将是一样的。 如果文本为空,则返回0,如果没有选择,返回插入位置。- Specified by:
-
getSelectionEnd
在接口AccessibleText
- 结果
- 指标到文本结尾的选择¡¥0
-
getSelectedText
public String getSelectedText()
返回所选文本的部分。- Specified by:
-
getSelectedText
在接口AccessibleText
- 结果
- 文本,如果没有选择,则为null
-
getAtIndex
public String getAtIndex(int part, int index)
返回给定索引处的String。 词之间的空格被视为一个词。- Specified by:
-
getAtIndex
接口AccessibleText
- 参数
-
part
- 要检索的CHARACTER,WORD或SENTENCE -
index
- 文本中的索引 - 结果
- 信,字或句子。
-
getAfterIndex
public String getAfterIndex(int part, int index)
返回给定索引后的String。 词之间的空格被视为一个词。- Specified by:
-
getAfterIndex
在接口AccessibleText
- 参数
-
part
- 要检索的CHARACTER,WORD或SENTENCE -
index
- 文本中的索引 - 结果
- 信,字或句子。
-
getBeforeIndex
public String getBeforeIndex(int part, int index)
返回给定索引之前的String。 词之间的空白被对待一个字。- Specified by:
-
getBeforeIndex
接口AccessibleText
- 参数
-
part
- 要检索的CHARACTER,WORD或SENTENCE -
index
- 文本中的索引 - 结果
- 信,字或句子。
-
getAccessibleEditableText
public AccessibleEditableText getAccessibleEditableText()
返回此文本组件的AccessibleEditableText接口。- 重写:
-
getAccessibleEditableText
在AccessibleContext
- 结果
- AccessibleEditableText界面
- 从以下版本开始:
- 1.4
- 另请参见:
-
AccessibleEditableText
-
setTextContents
public void setTextContents(String s)
将文本内容设置为指定的字符串。- Specified by:
-
setTextContents
在接口AccessibleEditableText
- 参数
-
s
- 设置文本内容的字符串 - 从以下版本开始:
- 1.4
-
insertTextAtIndex
public void insertTextAtIndex(int index, String s)
在指定的索引处插入指定的字符串- Specified by:
-
insertTextAtIndex
在接口AccessibleEditableText
- 参数
-
index
- 将插入字符串的文本中的索引 -
s
- 要插入文本的字符串 - 从以下版本开始:
- 1.4
-
getTextRange
public String getTextRange(int startIndex, int endIndex)
返回两个索引之间的文本字符串。- Specified by:
-
getTextRange
在接口AccessibleEditableText
- Specified by:
-
getTextRange
在接口AccessibleExtendedText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 - 结果
- 索引之间的文本字符串
- 从以下版本开始:
- 1.4
-
delete
public void delete(int startIndex, int endIndex)
删除两个索引之间的文本- Specified by:
-
delete
在接口AccessibleEditableText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 - 从以下版本开始:
- 1.4
-
cut
public void cut(int startIndex, int endIndex)
将两个索引之间的文本剪切到系统剪贴板中。- Specified by:
-
cut
在接口AccessibleEditableText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 - 从以下版本开始:
- 1.4
-
paste
public void paste(int startIndex)
将文本从系统剪贴板粘贴到从指定索引开始的文本。- Specified by:
-
paste
在接口AccessibleEditableText
- 参数
-
startIndex
- 文本中的起始索引 - 从以下版本开始:
- 1.4
-
replaceText
public void replaceText(int startIndex, int endIndex, String s)
用指定的字符串替换两个索引之间的文本。- Specified by:
-
replaceText
在接口AccessibleEditableText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 -
s
- 用于替换两个索引之间的文本的字符串 - 从以下版本开始:
- 1.4
-
selectText
public void selectText(int startIndex, int endIndex)
选择两个索引之间的文本。- Specified by:
-
selectText
在接口AccessibleEditableText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 - 从以下版本开始:
- 1.4
-
setAttributes
public void setAttributes(int startIndex, int endIndex, AttributeSet as)
为两个索引之间的文本设置属性。- Specified by:
-
setAttributes
接口AccessibleEditableText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 -
as
- 属性集 - 从以下版本开始:
- 1.4
- 另请参见:
-
AttributeSet
-
getTextSequenceAt
public AccessibleTextSequence getTextSequenceAt(int part, int index)
返回AccessibleTextSequence
在给定index
。- Specified by:
-
getTextSequenceAt
接口AccessibleExtendedText
- 参数
-
part
-在CHARACTER
,WORD
,SENTENCE
,LINE
或者ATTRIBUTE_RUN
检索 -
index
- 文本中的索引 - 结果
-
一个
AccessibleTextSequence
指定如果part
和index
有效的文本。 否则返回null
- 从以下版本开始:
- 1.6
- 另请参见:
-
AccessibleText.CHARACTER
,AccessibleText.WORD
,AccessibleText.SENTENCE
,AccessibleExtendedText.LINE
,AccessibleExtendedText.ATTRIBUTE_RUN
-
getTextSequenceAfter
public AccessibleTextSequence getTextSequenceAfter(int part, int index)
返回AccessibleTextSequence
给定后index
。- Specified by:
-
getTextSequenceAfter
在接口AccessibleExtendedText
- 参数
-
part
-在CHARACTER
,WORD
,SENTENCE
,LINE
或者ATTRIBUTE_RUN
检索 -
index
- 文本中的索引 - 结果
-
一个
AccessibleTextSequence
,如果part
和index
有效,则指定文本。 否则返回null
- 从以下版本开始:
- 1.6
- 另请参见:
-
AccessibleText.CHARACTER
,AccessibleText.WORD
,AccessibleText.SENTENCE
,AccessibleExtendedText.LINE
,AccessibleExtendedText.ATTRIBUTE_RUN
-
getTextSequenceBefore
public AccessibleTextSequence getTextSequenceBefore(int part, int index)
返回AccessibleTextSequence
之前给定的index
。- Specified by:
-
getTextSequenceBefore
在接口AccessibleExtendedText
- 参数
-
part
-在CHARACTER
,WORD
,SENTENCE
,LINE
或者ATTRIBUTE_RUN
检索 -
index
- 文本中的索引 - 结果
-
一个
AccessibleTextSequence
指定文本,如果part
和index
有效。 否则返回null
- 从以下版本开始:
- 1.6
- 另请参见:
-
AccessibleText.CHARACTER
,AccessibleText.WORD
,AccessibleText.SENTENCE
,AccessibleExtendedText.LINE
,AccessibleExtendedText.ATTRIBUTE_RUN
-
getTextBounds
public Rectangle getTextBounds(int startIndex, int endIndex)
返回Rectangle
包含两个指标之间的文本。- Specified by:
-
getTextBounds
在接口AccessibleExtendedText
- 参数
-
startIndex
- 文本中的起始索引 -
endIndex
- 文本中的结束索引 - 结果
-
如果索引有效,文本的边界矩形。
否则返回
null
- 从以下版本开始:
- 1.6
-
getAccessibleAction
public AccessibleAction getAccessibleAction()
描述从类别复制:AccessibleContext
获取支持一个或多个操作的此对象关联的AccessibleAction
。- 重写:
-
getAccessibleAction
在AccessibleContext
- 结果
-
AccessibleAction
如果由对象支持; 否则返回null
- 另请参见:
-
AccessibleAction
-
getAccessibleActionCount
public int getAccessibleActionCount()
返回此对象中可用操作的数量如果有多个可访问的操作数,则第一个被视为对象的“默认”操作。- Specified by:
-
getAccessibleActionCount
在接口AccessibleAction
- 结果
- 该对象中基于零的操作数
- 从以下版本开始:
- 1.4
-
getAccessibleActionDescription
public String getAccessibleActionDescription(int i)
返回对象的指定操作的描述。- Specified by:
-
getAccessibleActionDescription
在接口AccessibleAction
- 参数
-
i
- 基于零的操作索引 - 结果
- 一个字符串描述的动作
- 从以下版本开始:
- 1.4
- 另请参见:
-
getAccessibleActionCount()
-
doAccessibleAction
public boolean doAccessibleAction(int i)
对对象执行指定的Action- Specified by:
-
doAccessibleAction
在接口AccessibleAction
- 参数
-
i
- 基于零的操作索引 - 结果
- 如果行动执行,则为真; 否则为虚假。
- 从以下版本开始:
- 1.4
- 另请参见:
-
getAccessibleActionCount()
-
-