- 所有已实现的接口:
-
ImageObserver
,MenuContainer
,Serializable
,Accessible
,Scrollable
- 直接已知的子类:
-
JEditorPane
,JTextArea
,JTextField
JTextComponent
是swing文本组件的基类。它尽可能与java.awt.TextComponent
类兼容。此外,还提供了其他服务以实现额外的灵活性(超出可插拔UI和bean支持)。您可以在使用文本组件的一般规则中找到有关如何使用此类提供的功能的信息,这是The Java Tutorial中的一个部分。
- 插入符更改
-
插入符是swing文本组件中的可插拔对象。对插入符位置和选择更改的通知将发送到已向文本组件注册的
CaretListener
接口的实现。UI将安装一个默认插入符,除非已设置自定义插入符。
默认情况下,插入符跟踪在事件分派线程上执行的所有文档更改,并相应地更新其位置,如果在插入符位置之前或在插入符位置之前发生插入,则会进行更新,或者如果在插入符位置之前发生删除。DefaultCaret
尝试使自己可见,这可能导致在JScrollPane
中滚动文本组件。可以通过DefaultCaret.setUpdatePolicy(int)
方法更改默认插入符行为。
注意:非可编辑文本组件也有插入符,尽管可能不会被绘制。 - 命令
-
文本组件提供了许多可用于操作组件的命令。这基本上是组件表达其功能的方式。这些命令以swing
Action
接口的形式表示,使用TextAction
实现。文本组件支持的命令集可以通过getActions()
方法找到。这些操作可以绑定到键事件,从按钮触发等。 - 文本输入
-
文本组件支持灵活和国际化的文本输入,使用键映射和输入法框架,同时保持与AWT监听器模型的兼容性。
Keymap
允许应用程序将键击绑定到操作。为了允许多个文本组件共享键映射,它们可以使用扩展TextAction
的操作。TextAction
可以确定最近具有焦点的或曾经具有焦点的JTextComponent
,因此是操作的主题(在ActionEvent
发送到操作时,如果不包含目标文本组件作为其源)。输入法框架允许文本组件与输入法交互,这是一种预处理事件的独立软件组件,使用户可以使用键盘输入成千上万个不同字符,而键盘上只有很少的键。
JTextComponent
是框架的主动客户端,因此它实现了与输入法交互的首选用户界面。因此,一些键事件不会到达文本组件,因为它们由输入法处理,而一些文本输入将作为InputMethodEvent
中的已提交文本而不是作为键事件到达文本组件。完整的文本输入是keyTyped
键事件中的字符和输入法事件中已提交文本的组合。AWT监听器模型允许应用程序将事件监听器附加到组件,以便将事件绑定到操作。Swing鼓励使用键映射而不是监听器,但通过允许监听器有机会通过消耗事件来窃取事件,仍然与监听器保持兼容。
键盘事件和输入法事件在以下阶段处理,每个阶段都可以消耗事件:
键盘和输入法事件处理阶段 阶段 KeyEvent InputMethodEvent 1. 输入法 (在此生成) 2. 焦点管理器 3. 已注册的键监听器 已注册的输入法监听器 4. 在JTextComponent中处理输入法 5. 使用当前键映射处理键映射 6. JComponent中的键盘处理(例如加速键,组件导航等) 为了与监听键事件但不了解输入法事件的应用程序保持兼容,阶段4中的输入法处理为不处理输入法事件的组件提供了兼容模式。对于这些组件,已提交文本将转换为keyTyped键事件,并从第3阶段开始在键事件管道中处理,而不是在输入法事件管道中处理。
默认情况下,组件将创建一个键映射(名为DEFAULT_KEYMAP),该键映射将由所有JTextComponent实例共享作为默认键映射。通常,外观实现将安装一个不同的键映射,该键映射解析为默认键映射中未找到的绑定。最小绑定包括:
- 使用可打印键将内容插入编辑器。
- 使用退格键和删除键删除内容。
- 插入符向前和向后移动
- 模型/视图分离
-
文本组件具有模型-视图分离。文本组件汇集了用于表示模型、视图和控制器的对象。文本文档模型可以由其他作为模型观察者的视图共享(例如,一个文档可以由多个组件共享)。
模型由
Document
接口定义。这旨在提供一种灵活的文本存储机制,跟踪编辑期间的更改,并可以扩展为更复杂的模型。模型接口旨在捕获由SGML提供的表达能力,SGML是一种用于表达各种内容的系统。对文档的每次修改都会导致将更改的详细信息通知发送给所有观察者,形式为DocumentEvent
,这允许视图与模型保持同步。此事件发送给已实现DocumentListener
接口并向观察的模型注册兴趣的观察者。 - 位置信息
-
提供了确定视图中文本位置的能力。有两种方法,
modelToView(int)
和viewToModel(java.awt.Point)
用于确定此信息。 - 撤销/重做支持
-
提供了编辑历史机制的支持,以允许撤销/重做操作。文本组件本身默认情况下不提供历史缓冲区,但提供了可与历史缓冲区一起使用的
UndoableEdit
记录,以提供撤销/重做支持。支持由文档模型提供,允许附加UndoableEditListener实现。 - 线程安全
-
swing文本组件提供了一些线程安全操作的支持。由于文本组件的高度可配置性,可能会绕过提供的保护。保护主要来自模型,因此
AbstractDocument
的文档描述了提供的保护的假设。可以异步调用的方法标有注释。 - 换行符
- 有关如何处理换行符的讨论,请参阅DefaultEditorKit。
- 打印支持
-
提供了几种用于基本文档打印的
print
方法。如果需要更高级的打印功能,请使用getPrintable(java.text.MessageFormat, java.text.MessageFormat)
方法。
警告: 此类的序列化对象将不兼容未来的Swing版本。当前的序列化支持适用于短期存储或在运行相同版本Swing的应用程序之间的RMI。从1.4开始,已向java.beans
包添加了所有JavaBeans的长期存储支持。请参阅XMLEncoder
。
- 参见:
-
Nested Class Summary
Modifier and TypeClassDescriptionclass
该类实现了JTextComponent
类的辅助支持。static final class
表示JTextComponent
的拖放位置。static class
用于创建键绑定的绑定记录。Nested classes/interfaces declared in class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested classes/interfaces declared in class java.awt.Container
Container.AccessibleAWTContainer
Nested classes/interfaces declared in class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
默认的键映射,除非已设置不同的键映射,否则将由所有JTextComponent
实例共享。static final String
聚焦加速器的绑定属性名称。Fields declared in class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Fields declared in class java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Fields declared in interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addCaretListener
(CaretListener listener) 添加插入符监听器以通知插入符的任何更改。static Keymap
将新的键映射添加到键映射层次结构中。void
copy()
将关联文本模型中当前选择的范围传输到系统剪贴板,将内容保留在文本模型中。void
cut()
将关联文本模型中当前选择的范围传输到系统剪贴板,从模型中删除内容。protected void
通知所有已注册对此事件类型感兴趣的监听器。获取与此JTextComponent
关联的AccessibleContext
。Action[]
获取编辑器的命令列表。getCaret()
获取允许在视图上进行面向文本的导航的插入符。获取用于呈现插入符的当前颜色。返回在此文本组件上注册的所有插入符监听器的数组。int
返回文本组件的文本插入符位置。获取用于呈现禁用文本的当前颜色。获取与编辑器关联的模型。boolean
返回是否启用了自动拖动处理。返回组件在DnD操作期间应在其中视觉上指示为放置位置的位置,如果当前不应显示任何位置,则返回null
。final DropMode
返回此组件的拖放模式。char
返回将导致接收文本组件获得焦点的键加速器。获取负责进行高亮显示的对象。获取支持此组件的输入方法请求处理程序的输入方法请求处理程序。获取当前在此文本组件中活动的键映射。static Keymap
获取先前添加到文档中的命名键映射。返回文本组件边框与其文本之间的边距。返回NavigationFilter
。返回视图组件的视口的首选大小。getPrintable
(MessageFormat headerFormat, MessageFormat footerFormat) 返回用于打印此JTextComponent
内容的Printable
。int
getScrollableBlockIncrement
(Rectangle visibleRect, int orientation, int direction) 显示逻辑行或列的组件应计算滚动增量,该增量将完全显示一块行或列,具体取决于方向的值。boolean
如果视口应始终强制此Scrollable
的高度与视口的高度匹配,则返回true。boolean
如果视口应始终强制此Scrollable
的宽度与视口的宽度匹配,则返回true。int
getScrollableUnitIncrement
(Rectangle visibleRect, int orientation, int direction) 显示逻辑行或列的组件应计算滚动增量,该增量将完全显示一个新行或列,具体取决于方向的值。返回TextComponent
中包含的选定文本。获取用于呈现选定文本的当前颜色。获取用于呈现选择的当前颜色。int
返回选定文本的结束位置。int
返回选定文本的起始位置。getText()
返回TextComponent
中包含的文本。getText
(int offs, int len) 获取组件表示的文本部分。getToolTipText
(MouseEvent event) 返回用于event
的工具提示字符串。getUI()
获取此面向文本的编辑器的用户界面工厂。boolean
返回指示此TextComponent
是否可编辑的布尔值。static void
loadKeymap
(Keymap map, JTextComponent.KeyBinding[] bindings, Action[] actions) 使用一堆绑定加载键映射。modelToView
(int pos) 已弃用。modelToView2D
(int pos) 将模型中给定位置转换为视图坐标系中的位置。void
moveCaretPosition
(int pos) 将插入符移动到新位置,留下由上次调用setCaretPosition
定义的标记。protected String
返回此JTextComponent
的字符串表示形式。void
paste()
将系统剪贴板的内容传输到关联的文本模型。boolean
print()
一个方便的打印方法,显示打印对话框,然后以交互模式打印此JTextComponent
,没有页眉或页脚文本。boolean
print
(MessageFormat headerFormat, MessageFormat footerFormat) 一个方便的打印方法,显示打印对话框,然后以交互模式打印此JTextComponent
,并显示指定的页眉和页脚文本。boolean
print
(MessageFormat headerFormat, MessageFormat footerFormat, boolean showPrintDialog, PrintService service, PrintRequestAttributeSet attributes, boolean interactive) 打印此JTextComponent
的内容。void
从流中初始化。void
removeCaretListener
(CaretListener listener) 移除插入符监听器。static Keymap
removeKeymap
(String nm) 移除先前添加到文档中的命名键映射。void
replaceSelection
(String content) 用给定字符串表示的新内容替换当前选定内容。protected void
恢复先前由saveComposedText
保存的组合文本。protected boolean
saveComposedText
(int pos) 在指定位置周围保存组合文本。void
select
(int selectionStart, int selectionEnd) 选择指定起始和结束位置之间的文本。void
选择TextComponent
中的所有文本。void
设置要使用的插入符。void
设置用于呈现插入符的当前颜色。void
setCaretPosition
(int position) 设置TextComponent
的文本插入符位置。void
设置用于呈现禁用文本的当前颜色。void
setDocument
(Document doc) 将编辑器与文本文档关联。void
setDragEnabled
(boolean b) 打开或关闭自动拖动处理。final void
setDropMode
(DropMode dropMode) 设置此组件的拖放模式。void
setEditable
(boolean b) 设置指定的布尔值以指示此TextComponent
是否可编辑。void
setFocusAccelerator
(char aKey) 设置将导致接收文本组件获得焦点的键加速器。void
设置要使用的高亮器。void
设置用于将事件绑定到操作的键映射。void
设置文本组件边框与其文本之间的边距。void
setNavigationFilter
(NavigationFilter filter) 设置NavigationFilter
。void
设置用于呈现选定文本的当前颜色。void
设置用于呈现选择的当前颜色。void
setSelectionEnd
(int selectionEnd) 将选择结束设置为指定位置。void
setSelectionStart
(int selectionStart) 将选择开始设置为指定位置。void
将此TextComponent
的文本设置为指定的文本。void
设置此面向文本的编辑器的用户界面工厂。void
updateUI()
重新加载可插拔UI。int
viewToModel
(Point pt) 已弃用。int
viewToModel2D
(Point2D pt) 将视图坐标系中给定位置转换为模型中最近的代表位置。void
将模型的内容存储到给定流中。Methods declared in class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, getUIClassID, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Methods declared in class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
Methods declared in class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
FOCUS_ACCELERATOR_KEY
聚焦加速器的绑定属性名称。- 参见:
-
DEFAULT_KEYMAP
默认的键映射,除非已设置不同的键映射,否则将由所有JTextComponent
实例共享。- 参见:
-
-
Constructor Details
-
JTextComponent
public JTextComponent()创建一个新的JTextComponent
。建立插入符事件的监听器,并安装可插拔UI。将组件标记为可编辑。不使用布局管理器,因为布局由文本的视图子系统管理。文档模型设置为null
。
-
-
Method Details
-
getUI
获取此面向文本的编辑器的用户界面工厂。- 覆盖:
-
getUI
在类JComponent
中 - 返回:
- 工厂
-
setUI
设置此面向文本的编辑器的用户界面工厂。- 参数:
-
ui
- 工厂
-
updateUI
public void updateUI()重新加载可插拔UI。用于获取新接口的键是getUIClassID()
。UI的类型是TextUI
。设置UI后调用invalidate
。- 覆盖:
-
updateUI
在类JComponent
中 - 参见:
-
addCaretListener
添加一个插入符号监听器,以便通知插入符号的任何更改。- 参数:
-
listener
- 要添加的监听器 - 参见:
-
removeCaretListener
移除一个插入符号监听器。- 参数:
-
listener
- 要移除的监听器 - 参见:
-
getCaretListeners
返回在此文本组件上注册的所有插入符号监听器的数组。- 返回:
-
此组件的所有
CaretListener
或如果当前未注册插入符号监听器则返回空数组 - 自:
- 1.4
- 参见:
-
fireCaretUpdate
通知所有已注册对此事件类型感兴趣的监听器。事件实例是使用传递给fire方法的参数延迟创建的。监听器列表以从后到前的顺序处理。- 参数:
-
e
- 事件 - 参见:
-
setDocument
@BeanProperty(expert=true, description="the text document model") public void setDocument(Document doc) 将编辑器与文本文档关联。当前注册的工厂用于为文档构建一个视图,该视图在重新验证后由编辑器显示。将向每个监听器传播一个PropertyChange事件("document")。- 参数:
-
doc
- 要显示/编辑的文档 - 参见:
-
getDocument
获取与编辑器关联的模型。这主要是为了UI获取所需的最小状态量以成为文本编辑器。子类将返回实际类型的模型,通常是扩展Document的内容。- 返回:
- 模型
-
getActions
获取编辑器的命令列表。这是由插入的UI支持的命令列表,加上编辑器本身支持的命令集合。这些对于绑定到事件(例如在键映射中)非常有用。- 返回:
- 命令列表
-
setMargin
@BeanProperty(description="desired space between the border and text area") public void setMargin(Insets m) 设置文本组件的边框与其文本之间的边距空间。文本组件的默认Border
对象将使用此值创建适当的边距。但是,如果在文本组件上设置了非默认边框,则该Border
对象负责创建适当的边距空间(否则此属性将被有效地忽略)。这将导致组件的重绘。将向所有监听器发送一个PropertyChange事件("margin")。- 参数:
-
m
- 边框和文本之间的空间
-
getMargin
返回文本组件的边框与其文本之间的边距。- 返回:
- 边距
-
getCaret
获取允许在视图上进行面向文本的导航的插入符号。- 返回:
- 插入符号
-
setCaret
@BeanProperty(expert=true, description="the caret used to select/navigate") public void setCaret(Caret c) 设置要使用的插入符号。默认情况下,这将由安装的UI设置。如果需要,可以将其更改为自定义插入符号。设置插入符号会触发一个PropertyChange事件("caret")。- 参数:
-
c
- 插入符号 - 参见:
-
getHighlighter
获取负责进行高亮显示的对象。- 返回:
- 高亮器
-
setHighlighter
@BeanProperty(expert=true, description="object responsible for background highlights") public void setHighlighter(Highlighter h) 设置要使用的高亮器。默认情况下,这将由安装的UI设置。如果需要,可以将其更改为自定义高亮器。可以将高亮器设置为null
以禁用它。安装新高亮器时会触发一个PropertyChange事件("highlighter")。- 参数:
-
h
- 高亮器 - 参见:
-
setKeymap
@BeanProperty(description="set of key event to action bindings to use") public void setKeymap(Keymap map) 设置用于将事件绑定到操作的键映射。将其设置为null
将有效地禁用键盘输入。安装新键映射时会触发一个PropertyChange事件("keymap")。- 参数:
-
map
- 键映射 - 参见:
-
setDragEnabled
@BeanProperty(bound=false, description="determines whether automatic drag handling is enabled") public void setDragEnabled(boolean b) 打开或关闭自动拖动处理。为了启用自动拖动处理,此属性应设置为true
,并且组件的TransferHandler
需要是非null
。dragEnabled
属性的默认值为false
。尊重此属性并识别用户拖动手势的工作由外观实现负责,特别是组件的
TextUI
。当启用自动拖动处理时,大多数外观和感觉(包括那些子类化BasicLookAndFeel
的外观和感觉)在用户在选择上按下鼠标按钮然后将鼠标移动几个像素时开始拖放操作。因此,将此属性设置为true
可能会对选择的行为产生微妙的影响。如果使用忽略此属性的外观和感觉,仍然可以通过在组件的
TransferHandler
上调用exportAsDrag
来开始拖放操作。- 参数:
-
b
- 是否启用自动拖动处理 - 抛出:
-
HeadlessException
- 如果b
为true
且GraphicsEnvironment.isHeadless()
返回true
- 自:
- 1.4
- 参见:
-
getDragEnabled
public boolean getDragEnabled()返回是否启用自动拖动处理。- 返回:
-
dragEnabled
属性的值 - 自:
- 1.4
- 参见:
-
setDropMode
设置此组件的放置模式。为了向后兼容,此属性的默认值为DropMode.USE_SELECTION
。然而,建议使用DropMode.INSERT
,以获得更好的用户体验。它提供了在文本位置之间放置的类似行为,但不会影响实际文本选择和插入符号位置。JTextComponents
支持以下放置模式:DropMode.USE_SELECTION
DropMode.INSERT
如果此组件具有接受放置的
TransferHandler
,则放置模式才有意义。- 参数:
-
dropMode
- 要使用的放置模式 - 抛出:
-
IllegalArgumentException
- 如果放置模式不受支持或为null
- 自:
- 1.6
- 参见:
-
getDropMode
返回此组件的放置模式。- 返回:
- 此组件的放置模式
- 自:
- 1.6
- 参见:
-
getDropLocation
返回组件在DnD操作期间应该在视觉上指示为放置位置的位置,如果当前不需要显示任何位置,则返回null
。此方法不适用于从
TransferHandler
查询放置位置,因为放置位置仅在TransferHandler
的canImport
返回并允许显示位置后设置。当此属性更改时,组件将触发名称为"dropLocation"的属性更改事件。
- 返回:
- 放置位置
- 自从:
- 1.6
- 另请参阅:
-
getKeymap
获取当前在此文本组件中活动的键位映射。- 返回:
- 键位映射
-
addKeymap
将新的键位映射添加到键位映射层次结构中。键位映射绑定从下到上解析,因此在子级中指定的属性将覆盖父级中指定的属性。- 参数:
-
nm
- 键位映射的名称(在文档中命名的键位映射集合中必须是唯一的);如果键位映射未命名,则名称可以为null
,但调用方负责管理返回的引用,因为无法按名称获取未命名的键位映射 -
parent
- 父键位映射;如果未指定绑定需要在其他键位映射中解析,则此项可以为null
- 返回:
- 键位映射
-
removeKeymap
从文档中删除先前添加的命名键位映射。无法以此方式删除具有null
名称的键位映射。- 参数:
-
nm
- 要删除的键位映射的名称 - 返回:
- 被删除的键位映射
-
getKeymap
获取先前添加到文档中的命名键位映射。这不适用于具有null
名称的键位映射。- 参数:
-
nm
- 键位映射的名称 - 返回:
- 键位映射
-
loadKeymap
加载具有一堆绑定的键位映射。这可用于将一组静态定义的绑定加载到某个键位映射中。以下示例说明了将一些键绑定到与JTextComponent关联的剪切、复制和粘贴操作的示例。实现此操作的代码片段可能如下所示:
绑定和操作集可能为空,但不能为static final JTextComponent.KeyBinding[] defaultBindings = { new JTextComponent.KeyBinding( KeyStroke.getKeyStroke(KeyEvent.VK_C, InputEvent.CTRL_MASK), DefaultEditorKit.copyAction), new JTextComponent.KeyBinding( KeyStroke.getKeyStroke(KeyEvent.VK_V, InputEvent.CTRL_MASK), DefaultEditorKit.pasteAction), new JTextComponent.KeyBinding( KeyStroke.getKeyStroke(KeyEvent.VK_X, InputEvent.CTRL_MASK), DefaultEditorKit.cutAction), }; JTextComponent c = new JTextPane(); Keymap k = c.getKeymap(); JTextComponent.loadKeymap(k, defaultBindings, c.getActions());
null
。- 参数:
-
map
- 键位映射 -
bindings
- 绑定 -
actions
- 操作集
-
getCaretColor
获取用于呈现插入符号的当前颜色。- 返回:
- 颜色
-
setCaretColor
@BeanProperty(preferred=true, description="the color used to render the caret") public void setCaretColor(Color c) 设置用于呈现插入符号的当前颜色。将颜色设置为null
实际上是恢复默认颜色。设置颜色会触发一个属性更改事件("caretColor")。- 参数:
-
c
- 颜色 - 另请参阅:
-
getSelectionColor
获取用于呈现选择的当前颜色。- 返回:
- 颜色
-
setSelectionColor
@BeanProperty(preferred=true, description="color used to render selection background") public void setSelectionColor(Color c) 设置用于呈现选择的当前颜色。将颜色设置为null
等同于设置Color.white
。设置颜色会触发一个属性更改事件("selectionColor")。- 参数:
-
c
- 颜色 - 另请参阅:
-
getSelectedTextColor
获取用于呈现所选文本的当前颜色。- 返回:
- 颜色
-
setSelectedTextColor
@BeanProperty(preferred=true, description="color used to render selected text") public void setSelectedTextColor(Color c) 设置用于呈现所选文本的当前颜色。将颜色设置为null
等同于Color.black
。设置颜色会触发一个属性更改事件("selectedTextColor")。- 参数:
-
c
- 颜色 - 另请参阅:
-
getDisabledTextColor
获取用于呈现禁用文本的当前颜色。- 返回:
- 颜色
-
setDisabledTextColor
@BeanProperty(preferred=true, description="color used to render disabled text") public void setDisabledTextColor(Color c) 设置用于呈现禁用文本的当前颜色。设置颜色会触发一个属性更改事件("disabledTextColor")。- 参数:
-
c
- 颜色 - 另请参阅:
-
replaceSelection
用给定的字符串表示的新内容替换当前选定的内容。如果没有选择,则相当于插入给定文本。如果没有替换文本,则相当于删除当前选择。这是默认实现的用于插入内容的操作的方法,该操作绑定到键位映射操作。
- 参数:
-
content
- 用于替换选择的内容
-
getText
获取由组件表示的文本的一部分。如果长度为0,则返回空字符串。- 参数:
-
offs
- 偏移量≥ 0 -
len
- 长度≥ 0 - 返回:
- 文本
- 抛出:
-
BadLocationException
- 如果偏移量或长度无效
-
modelToView
Deprecated.replaced bymodelToView2D(int)
将模型中给定位置转换为视图坐标系中的位置。必须为此转换计算正大小的组件(即,在组件调整大小之前无法计算布局)。组件不必可见或已绘制。- 参数:
-
pos
- 位置≥ 0 - 返回:
-
作为矩形的坐标,其中(r.x,r.y)是坐标系中的位置,如果组件尚未具有正大小,则返回
null
。 - 抛出:
-
BadLocationException
- 如果给定位置不表示关联文档中的有效位置 - 另请参阅:
-
modelToView2D
将模型中给定位置转换为视图坐标系中的位置。必须为此转换计算正大小的组件(即,在组件调整大小之前无法计算布局)。组件不必可见或已绘制。- 参数:
-
pos
- 位置>= 0
- 返回:
-
作为矩形的坐标,其中(r.x,r.y)是坐标系中的位置,如果组件尚未具有正大小,则返回
null
。 - 抛出:
-
BadLocationException
- 如果给定位置不表示关联文档中的有效位置 - 自从:
- 9
- 另请参阅:
-
viewToModel
Deprecated.replaced byviewToModel2D(Point2D)
将视图坐标系中给定位置转换为模型中最近的代表位置。必须为此转换计算正大小的组件(即,在组件调整大小之前无法计算布局)。组件不必可见或已绘制。- 参数:
-
pt
- 要转换的视图中的位置 - 返回:
-
从文档开头的偏移量≥ 0,如果组件尚未具有正大小,则返回
-1
。 - 另请参阅:
-
viewToModel2D
将视图坐标系中给定位置转换为模型中最近的代表位置。必须为此转换计算正大小的组件(即,在组件调整大小之前无法计算布局)。组件不必可见或已绘制。- 参数:
-
pt
- 要转换的视图中的位置 - 返回:
-
从文档开头的偏移量
>= 0
,如果组件尚未具有正大小,则返回-1
。 - 自从:
- 9
- 另请参阅:
-
cut
public void cut()将关联文本模型中当前选定的范围传输到系统剪贴板,并从模型中删除内容。当前选择将被重置。对于null
选择不执行任何操作。- 参见:
-
copy
public void copy()将关联文本模型中当前选定的范围传输到系统剪贴板,同时保留文本模型中的内容。当前选择保持不变。对于null
选择不执行任何操作。- 参见:
-
paste
public void paste()将系统剪贴板的内容传输到关联文本模型中。如果关联视图中有选择,则用剪贴板的内容替换它。如果没有选择,则将剪贴板的内容插入到关联视图中当前插入位置的前面。如果剪贴板为空,则不执行任何操作。- 参见:
-
moveCaretPosition
public void moveCaretPosition(int pos) 将插入符移动到新位置,留下由上次调用setCaretPosition
定义的标记。这形成一个选择。如果文档为null
,则不执行任何操作。位置必须在组件文本的长度之间(0到长度)否则会抛出异常。- 参数:
-
pos
- 位置 - 抛出:
-
IllegalArgumentException
- 如果为position
提供的值小于零或大于组件文本长度 - 参见:
-
setFocusAccelerator
@BeanProperty(description="accelerator character used to grab focus") public void setFocusAccelerator(char aKey) 设置将导致接收文本组件获得焦点的键加速器。加速器将是平台特定修改键和给定字符的组合(转换为大写)。例如,在Windows上使用ALT键作为修改键,在Mac上使用CTRL+ALT组合键。默认情况下,没有焦点加速键。任何先前的键加速器设置将被取代。'\0'键设置将被注册,并且会关闭焦点加速器。设置新键时,将触发PropertyChange事件(FOCUS_ACCELERATOR_KEY)。- 参数:
-
aKey
- 键 - 参见:
-
getFocusAccelerator
public char getFocusAccelerator()返回将导致接收文本组件获得焦点的键加速器。如果未设置焦点加速器,则返回'\0'。- 返回:
- 键
-
read
从流初始化。这将创建适用于组件的类型的模型,并从流初始化模型。默认情况下,这将以纯文本加载模型。将丢弃模型的先前内容。- 参数:
-
in
- 读取的流 -
desc
- 描述流的对象;这可能是一个字符串、文件、URL等。某些类型的文档(例如html)可能能够利用此信息;如果非null
,则将其添加为文档的属性 - 抛出:
-
IOException
- 由用于初始化的流引发 - 参见:
-
write
将模型的内容存储到给定的流中。默认情况下,这将以纯文本形式存储模型。- 参数:
-
out
- 输出流 - 抛出:
-
IOException
- 任何I/O错误
-
setCaretPosition
@BeanProperty(bound=false, description="the caret position") public void setCaretPosition(int position) 设置TextComponent
的文本插入符位置。请注意,插入符会跟踪更改,因此如果更改组件的基础文本,则插入符可能会移动。如果文档为null
,则不执行任何操作。位置必须在组件文本的长度之间(0到长度)否则会抛出异常。- 参数:
-
position
- 位置 - 抛出:
-
IllegalArgumentException
- 如果为position
提供的值小于零或大于组件文本长度
-
getCaretPosition
public int getCaretPosition()返回文本组件的文本插入符位置。- 返回:
- 文本组件的文本插入符位置 ≥ 0
-
setText
将此TextComponent
的文本设置为指定的文本。如果文本为null
或为空,则仅删除旧文本。插入文本后,结果插入符位置由插入符类的实现确定。请注意,文本不是绑定属性,因此在更改时不会触发
PropertyChangeEvent
。要监听文本的更改,请使用DocumentListener
。- 参数:
-
t
- 要设置的新文本 - 参见:
-
getText
返回TextComponent
中包含的文本。如果底层文档为null
,将会抛出NullPointerException
。请注意,文本不是绑定属性,因此在更改时不会触发PropertyChangeEvent
。要监听文本的更改,请使用DocumentListener
。- 返回:
- 文本
- 抛出:
-
NullPointerException
- 如果文档为null
- 参见:
-
getSelectedText
返回TextComponent
中包含的选定文本。如果选择为null
或文档为空,则返回null
。- 返回:
- 文本
- 抛出:
-
IllegalArgumentException
- 如果选择由于某种原因无法映射到文档 - 参见:
-
isEditable
public boolean isEditable()返回指示此TextComponent
是否可编辑的布尔值。- 返回:
- 布尔值
- 参见:
-
setEditable
设置指定的布尔值以指示此TextComponent
是否应可编辑。当状态更改时,将触发PropertyChange事件("editable")。- 参数:
-
b
- 要设置的布尔值 - 参见:
-
getSelectionStart
public int getSelectionStart()返回选定文本的起始位置。对于空文档,返回0,如果没有选择,则返回点的值。- 返回:
- 起始位置 ≥ 0
-
setSelectionStart
@BeanProperty(bound=false, description="starting location of the selection.") public void setSelectionStart(int selectionStart) 将选择开始位置设置为指定位置。新的起始点受限于当前选择结束点之前或在其位置。这是为了向后兼容性而提供的,以便在
java.awt.TextComponent
上调用此方法的代码。这是实现为转发到实际维护选择的Caret
实现。- 参数:
-
selectionStart
- 文本的起始位置 ≥ 0
-
getSelectionEnd
public int getSelectionEnd()返回选定文本的结束位置。如果文档为空,则返回0,如果没有选择,则返回点的值。- 返回:
- 结束位置 ≥ 0
-
setSelectionEnd
@BeanProperty(bound=false, description="ending location of the selection.") public void setSelectionEnd(int selectionEnd) 将选择结束位置设置为指定位置。新的结束点受限于当前选择开始点之后或在其位置。这是为了向后兼容性而提供的,以便在
java.awt.TextComponent
上调用此方法的代码。这是实现为转发到实际维护选择的Caret
实现。- 参数:
-
selectionEnd
- 文本的结束位置 ≥ 0
-
select
public void select(int selectionStart, int selectionEnd) 选择指定起始位置和结束位置之间的文本。此方法设置所选文本的起始和结束位置,并强制执行起始位置必须大于或等于零的限制。结束位置必须大于或等于起始位置,并且小于或等于文本组件文本的长度。
如果调用者提供的值不一致或超出范围,则该方法会默默地强制执行这些约束,而不会失败。具体而言,如果起始位置或结束位置大于文本长度,则将重置为等于文本长度。如果起始位置小于零,则将其重置为零,如果结束位置小于起始位置,则将其重置为起始位置。
此调用是为了向后兼容而提供的。它被路由到对
setCaretPosition
的调用,然后是对moveCaretPosition
的调用。管理选择的首选方法是直接调用这些方法。- 参数:
-
selectionStart
- 文本的起始位置 -
selectionEnd
- 文本的结束位置 - 另请参阅:
-
selectAll
public void selectAll()选择TextComponent
中的所有文本。在null
或空文档上不执行任何操作。 -
getToolTipText
返回要用作event
工具提示的字符串。这将返回以下之一:- 如果使用非
null
值调用了setToolTipText
,则将返回该值,否则 - 将返回在UI上调用
getToolTipText
的值。
JTextComponent
不会向ToolTipManager
注册自身。这意味着除非在ToolTipManager
上调用了registerComponent
,否则不会从TextUI
显示工具提示。- 覆盖:
-
getToolTipText
在类JComponent
- 参数:
-
event
- 相关事件 - 返回:
-
要用作
event
工具提示的字符串 - 另请参阅:
- 如果使用非
-
getPreferredScrollableViewportSize
返回视图组件的视口的首选大小。这是实现默认行为的方法,返回组件的首选大小。- 指定:
-
getPreferredScrollableViewportSize
在接口Scrollable
- 返回:
-
此
Scrollable
的视图是JViewport
的首选大小 - 另请参阅:
-
getScrollableUnitIncrement
显示逻辑行或列的组件应计算滚动增量,以完全显示一个新行或列,具体取决于方向的值。理想情况下,组件应通过返回完全显示该项所需的距离来处理部分显示的行或列。此默认实现只是返回可见区域的10%。子类可能能够提供一个更合理的值。
- 指定:
-
getScrollableUnitIncrement
在接口Scrollable
- 参数:
-
visibleRect
- 视口内可见的视图区域 -
orientation
-SwingConstants.VERTICAL
或SwingConstants.HORIZONTAL
-
direction
- 小于零向上/左滚动,大于零向下/右滚动 - 返回:
- 指定方向上滚动的“单位”增量
- 抛出:
-
IllegalArgumentException
- 对于无效的方向 - 另请参阅:
-
getScrollableBlockIncrement
显示逻辑行或列的组件应计算滚动增量,以完全显示一个块的行或列,具体取决于方向的值。此默认实现只是返回可见区域。子类可能能够提供一个更合理的值。
- 指定:
-
getScrollableBlockIncrement
在接口Scrollable
- 参数:
-
visibleRect
- 视口内可见的视图区域 -
orientation
-SwingConstants.VERTICAL
或SwingConstants.HORIZONTAL
-
direction
- 小于零向上/左滚动,大于零向下/右滚动 - 返回:
- 指定方向上滚动的“块”增量
- 抛出:
-
IllegalArgumentException
- 对于无效的方向 - 另请参阅:
-
getScrollableTracksViewportWidth
如果视口应始终强制此Scrollable
的宽度与视口的宽度匹配,则返回true。例如,支持换行的普通文本视图将在此处返回true,因为不希望换行的行超出视口的右边缘。请注意,对于祖先为JScrollPane
的Scrollable
返回true将有效地禁用水平滚动。滚动容器,如
JViewport
,将在每次验证时使用此方法。- 指定:
-
getScrollableTracksViewportWidth
在接口Scrollable
- 返回:
-
如果视口应强制
Scrollable
的宽度与其自身匹配,则返回true
-
getScrollableTracksViewportHeight
如果视口应始终强制此Scrollable
的高度与视口的高度匹配,则返回true。例如,按列流动文本的列视图可以通过在此处返回true有效地禁用垂直滚动。滚动容器,如
JViewport
,将在每次验证时使用此方法。- 指定:
-
getScrollableTracksViewportHeight
在接口Scrollable
- 返回:
-
如果视口应强制
Scrollable
的高度与其自身匹配,则返回true
-
print
一个方便的打印方法,显示打印对话框,然后以交互模式打印此JTextComponent
,不包含页眉或页脚文本。注意:此方法会阻塞,直到打印完成。注意:在无头模式下,不会显示任何对话框。
此方法调用完整功能的
print
方法执行打印。- 返回:
-
true
,除非用户取消打印 - 抛出:
-
PrinterException
- 如果打印系统中的错误导致作业中止 -
SecurityException
- 如果此线程不允许启动打印作业请求 - 自:
- 1.6
- 另请参阅:
-
print
public boolean print(MessageFormat headerFormat, MessageFormat footerFormat) throws PrinterException 一个方便的打印方法,显示打印对话框,然后以指定的页眉和页脚文本以交互模式打印此JTextComponent
。注意:此方法会阻塞,直到打印完成。注意:在无头模式下,不会显示任何对话框。
此方法调用完整功能的
print
方法执行打印。- 参数:
-
headerFormat
- 用作页眉的文本,使用MessageFormat
格式,或者为null
表示无页眉 -
footerFormat
- 用作页脚的文本,使用MessageFormat
格式,或者为null
表示无页脚 - 返回:
-
true
,除非用户取消打印 - 抛出:
-
PrinterException
- 如果打印系统中的错误导致作业被中止 -
SecurityException
- 如果此线程不允许发起打印作业请求 - 自版本:
- 1.6
- 参见:
-
print
public boolean print(MessageFormat headerFormat, MessageFormat footerFormat, boolean showPrintDialog, PrintService service, PrintRequestAttributeSet attributes, boolean interactive) throws PrinterException 打印此JTextComponent
的内容。注意:此方法会阻塞,直到打印完成。通过提供
MessageFormat
参数,可以向输出添加页面页眉和页脚文本。打印代码从格式中请求Strings
,提供一个单独的项目,可以包含在格式化字符串中:表示当前页码的Integer
。showPrintDialog boolean
参数允许您指定是否向用户显示打印对话框。当显示对话框时,用户可以使用对话框更改打印属性,甚至取消打印。service
允许您提供用于打印对话框的初始PrintService
,或者在不显示对话框时指定要打印到的PrintService
。attributes
可用于提供打印对话框的初始值,或在不显示对话框时提供任何所需的属性。attributes
可用于控制作业的打印方式,例如双面打印或单面打印。interactive boolean
参数允许您指定是否以交互模式执行打印。如果为true
,则在打印过程中会显示一个带有中止选项的进度对话框。当在事件分派线程上调用print
时,此对话框是模态的,否则是非模态的。 警告:在事件分派线程上调用此方法并且interactive false
会阻止处理所有事件,包括重绘,直到打印完成。仅建议在从没有可见GUI的应用程序打印时使用。注意:在无头模式下,
showPrintDialog
和interactive
参数将被忽略,不会显示任何对话框。此方法确保在打印过程中不会更改
document
。为了在视觉上指示,打印期间会将setEnabled(false)
设置。此方法使用
getPrintable(java.text.MessageFormat, java.text.MessageFormat)
来呈现文档内容。此方法是线程安全的,尽管大多数Swing方法不是。请参阅Swing中的并发性获取更多信息。
示例用法。此代码片段显示一个跨平台打印对话框,然后以交互模式打印
JTextComponent
,除非用户取消对话框:textComponent.print(new MessageFormat("My text component header"), new MessageFormat("Footer. Page - {0}"), true, null, null, true);
在事件分派线程之外执行此代码会在后台上进行打印。以下模式可能用于后台打印:
FutureTask<Boolean> future = new FutureTask<Boolean>( new Callable<Boolean>() { public Boolean call() { return textComponent.print(.....); } }); executor.execute(future);
- 参数:
-
headerFormat
- 用作页眉的文本,使用MessageFormat
格式,或者为null
表示无页眉 -
footerFormat
- 用作页脚的文本,使用MessageFormat
格式,或者为null
表示无页脚 -
showPrintDialog
-true
表示显示打印对话框,false
表示不显示 -
service
- 初始PrintService
,或者为null
表示默认 -
attributes
- 要应用于打印作业的作业属性,或者为null
表示无 -
interactive
- 是否以交互模式打印 - 返回:
-
true
,除非用户取消打印 - 抛出:
-
PrinterException
- 如果打印系统中的错误导致作业被中止 -
SecurityException
- 如果此线程不允许发起打印作业请求 - 自版本:
- 1.6
- 参见:
-
getPrintable
返回一个Printable
,用于打印此JTextComponent
的内容。返回的Printable
会按照屏幕上的外观打印文档,但会重新格式化以适合纸张。返回的Printable
可以包装在另一个Printable
中,以创建复杂的报告和文档。返回的
Printable
与此JTextComponent
共享document
。开发人员有责任确保在使用此Printable
时不会更改document
。当在打印过程中更改document
时,打印行为是不确定的。通过提供
MessageFormat
参数,可以向输出添加页面页眉和页脚文本。打印代码从格式中请求Strings
,提供一个单独的项目,可以包含在格式化字符串中:表示当前页码的Integer
。当打印返回的
Printable
时,会根据页面大小适当格式化文档内容。为了正确的换行,所有页面的imageable width
必须相同。请参阅PageFormat.getImageableWidth()
。此方法是线程安全的,尽管大多数Swing方法不是。请参阅Swing中的并发性获取更多信息。
返回的
Printable
可以在任何线程上打印。此实现返回的
Printable
会在事件分派线程上执行所有绘制,无论在哪个线程上使用它。- 参数:
-
headerFormat
- 用作页眉的文本,使用MessageFormat
格式,或者为null
表示无页眉 -
footerFormat
- 用作页脚的文本,使用MessageFormat
格式,或者为null
表示无页脚 - 返回:
-
用于打印此
JTextComponent
内容的Printable
- 自版本:
- 1.6
- 参见:
-
getAccessibleContext
获取与此JTextComponent
关联的AccessibleContext
。对于文本组件,AccessibleContext
采用AccessibleJTextComponent
的形式。如果需要,将创建一个新的AccessibleJTextComponent
实例。- 指定者:
-
getAccessibleContext
在接口Accessible
中 - 覆盖:
-
getAccessibleContext
在类Component
中 - 返回:
-
作为此
JTextComponent
的AccessibleContext
的AccessibleJTextComponent
-
paramString
返回此JTextComponent
的字符串表示形式。此方法仅用于调试目的,返回的字符串的内容和格式可能因实现而异。返回的字符串可能为空,但不能为null
。重写
paramString
以提供有关JFC组件特定新方面的信息。- 覆盖:
-
paramString
在类JComponent
中 - 返回:
-
此
JTextComponent
的字符串表示形式
-
getInputMethodRequests
从类中复制的描述:Component
获取支持此组件的输入法请求处理程序,以支持来自输入法的请求。支持现场文本输入的组件必须重写此方法以返回一个InputMethodRequests
实例。同时,它还必须处理输入法事件。- 覆盖:
-
getInputMethodRequests
在类Component
中 - 返回:
-
此组件的输入法请求处理程序,默认为
null
- 参见:
-
saveComposedText
protected boolean saveComposedText(int pos) 保存指定位置周围的组合文本。保存指定位置周围的组合文本(如果有)在后备存储中保存并从文档中删除。- 参数:
-
pos
- 用于标识组合文本位置的文档位置 - 返回:
-
如果组合文本存在并已保存,则返回
true
,否则返回false
- 自:
- 1.7
- 参见:
-
restoreComposedText
protected void restoreComposedText()恢复先前由saveComposedText
保存的组合文本。保存的组合文本将重新插入到文档中。只有在saveComposedText
返回true
时才应调用此方法。- 自:
- 1.7
- 参见:
-
modelToView2D(int)