Класс JTextArea
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable,Accessible,Scrollable
@JavaBean(defaultProperty="UIClassID", description="A multi-line area that displays plain text.") public class JTextArea extends JTextComponent
java.awt.TextArea, где это возможно. Сведения и примеры использования всех текстовых компонентов можно найти в Использование текстовых компонентов в разделе Руководства по Java. Данный компонент обладает возможностями, отсутствующими в классе java.awt.TextArea. Дополнительные возможности можно найти в суперклассе. Альтернативные классы многострочного текста с расширенными возможностями: JTextPane и JEditorPane.
Компонент java.awt.TextArea внутренне обрабатывает прокрутку. JTextArea отличается тем, что не управляет прокруткой, но реализует интерфейс swing Scrollable. Это позволяет разместить его внутри JScrollPane, если требуется поведение прокрутки, и использовать напрямую, если прокрутка не нужна.
java.awt.TextArea имеет возможность переносить строки. Это регулировалось политикой горизонтальной прокрутки. Поскольку прокрутка не выполняется напрямую JTextArea, обратная совместимость должна быть обеспечена другим способом. JTextArea имеет свойство перевода строки, которое управляет тем, будут ли строки переноситься или нет. По умолчанию свойство переноса строки установлено в false (не переносить).
java.awt.TextArea имеет два свойства rows и columns, используемых для определения предпочтительного размера. JTextArea использует эти свойства для указания предпочтительного размера области просмотра при размещении внутри JScrollPane, чтобы соответствовать функциональности, предоставляемой java.awt.TextArea. JTextArea имеет предпочтительный размер, необходимый для отображения всего текста, чтобы он правильно работал внутри JScrollPane. Если значение rows или columns равно нулю, предпочтительный размер по этой оси используется для предпочтительного размера области просмотра по той же оси.
За изменениями в java.awt.TextArea можно следить, добавив TextListener для TextEvent. В компонентах, основанных на JTextComponent, изменения транслируются из модели через DocumentEvent в DocumentListeners. DocumentEvent указывает местоположение изменения и его тип, если это необходимо. Пример кода может выглядеть так:
DocumentListener myListener = ??;
JTextArea myArea = ??;
myArea.getDocument().addDocumentListener(myListener);
- Новые строки
- Для обсуждения того, как обрабатываются новые строки, см. DefaultEditorKit.
Предупреждение: Swing не является потокобезопасным. Дополнительную информацию можно найти в Политике потоков Swing.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с версии 1.4, добавлена поддержка долговременного хранения всех JavaBeans в пакете java.beans. См. XMLEncoder.
- С:
- 1.2
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
JTextArea.AccessibleJTextArea |
Этот класс реализует поддержку доступности для класса JTextArea. |
Вложенные классы/интерфейсы, объявленные в классе javax.swing.text.JTextComponent
JTextComponent.AccessibleJTextComponent, JTextComponent.DropLocation, JTextComponent.KeyBinding
Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent
JComponent.AccessibleJComponent
Вложенные классы/интерфейсы, объявленные в классе java.awt.Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
Поля, объявленные в классе javax.swing.text.JTextComponent
DEFAULT_KEYMAP, FOCUS_ACCELERATOR_KEY
Поля, объявленные в классе javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Поля, объявленные в классе java.awt.Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
Поля, объявленные в интерфейсе java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JTextArea() |
Создаёт новый TextArea. |
JTextArea |
Создаёт новый пустой TextArea с заданным количеством строк и столбцов. |
JTextArea |
Создаёт новый TextArea с заданным отображаемым текстом. |
JTextArea |
Создаёт новый TextArea с заданным текстом и количеством строк и столбцов. |
JTextArea |
Создаёт новый JTextArea с заданной моделью документа и значениями по умолчанию для других аргументов (null, 0, 0). |
JTextArea |
Создаёт новый JTextArea с заданным количеством строк и столбцов и заданной моделью. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
append |
Добавляет указанный текст в конец документа. |
protected Document |
createDefaultModel() |
Создаёт реализацию модели по умолчанию, используемую при создании, если явно не задана. |
AccessibleContext |
getAccessibleContext() |
Возвращает AccessibleContext, связанный с этим JTextArea. |
int |
getColumns() |
Возвращает количество столбцов в TextArea. |
protected int |
getColumnWidth() |
Получает ширину столбца. |
int |
getLineCount() |
Определяет количество строк, содержащихся в области. |
int |
getLineEndOffset |
Определяет смещение конца указанной строки. |
int |
getLineOfOffset |
Преобразует смещение в тексте компонентов в номер строки. |
int |
getLineStartOffset |
Определяет смещение начала указанной строки. |
boolean |
getLineWrap() |
Получает политику перевода строк для текстовой области. |
Dimension |
getPreferredScrollableViewportSize() |
Возвращает предпочтительный размер области просмотра, если этот компонент встроен в JScrollPane. |
Dimension |
getPreferredSize() |
Возвращает предпочтительный размер TextArea. |
protected int |
getRowHeight() |
Определяет значение высоты строки. |
int |
getRows() |
Возвращает количество строк в TextArea. |
boolean |
getScrollableTracksViewportWidth() |
Возвращает true, если область просмотра всегда должна принудительно соответствовать ширине этого Scrollable ширине области просмотра. |
int |
getScrollableUnitIncrement |
Компоненты, отображающие логические строки или столбцы, должны вычислять приращение прокрутки, которое полностью отобразит новую строку или столбец в зависимости от значения ориентации. |
int |
getTabSize() |
Получает количество символов, используемых для расширения табуляций. |
String |
getUIClassID() |
Возвращает идентификатор класса для UI. |
boolean |
getWrapStyleWord() |
Получает стиль перевода строк, если текстовая область переводит строки. |
void |
insert |
Вставляет указанный текст в указанную позицию. |
protected String |
paramString() |
Возвращает строковое представление этого JTextArea. |
void |
replaceRange |
Заменяет текст с указанной начальной по конечной позиции новым указанным текстом. |
void |
setColumns |
Устанавливает количество столбцов для этого TextArea. |
void |
setFont |
Устанавливает текущий шрифт. |
void |
setLineWrap |
Устанавливает политику перевода строк для текстовой области. |
void |
setRows |
Устанавливает количество строк для этого TextArea. |
void |
setTabSize |
Устанавливает количество символов для расширения табуляций. |
void |
setWrapStyleWord |
Устанавливает стиль перевода строк, если текстовая область переводит строки. |
Методы, объявленные в классе javax.swing.text.JTextComponent
addCaretListener, addKeymap, copy, cut, fireCaretUpdate, getActions, getCaret, getCaretColor, getCaretListeners, getCaretPosition, getDisabledTextColor, getDocument, getDragEnabled, getDropLocation, getDropMode, getFocusAccelerator, getHighlighter, getInputMethodRequests, getKeymap, getKeymap, getMargin, getNavigationFilter, getPrintable, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, modelToView2D, moveCaretPosition, paste, print, print, print, read, removeCaretListener, removeKeymap, replaceSelection, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setDisabledTextColor, setDocument, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, setText, setUI, updateUI, viewToModel, viewToModel2D, write
Методы, объявленные в классе 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, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getTopLevelAncestor, getTransferHandler, 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, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
Методы, объявленные в классе 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
Методы, объявленные в классе 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
Подробное описание конструкторов
JTextArea
public JTextArea()
JTextArea
public JTextArea(String text)
- Параметры:
-
text- отображаемый текст, или null
JTextArea
public JTextArea(int rows, int columns)
- Параметры:
-
rows- количество строк >= 0 -
columns- количество столбцов >= 0 - Исключения:
-
IllegalArgumentException- если аргументы строк или столбцов отрицательные.
JTextArea
public JTextArea(String text, int rows, int columns)
- Параметры:
-
text- отображаемый текст, или null -
rows- количество строк >= 0 -
columns- количество столбцов >= 0 - Исключения:
-
IllegalArgumentException- если аргументы строк или столбцов отрицательные.
JTextArea
public JTextArea(Document doc)
- Параметры:
-
doc- используемая модель
JTextArea
public JTextArea(Document doc, String text, int rows, int columns)
- Параметры:
-
doc- используемая модель, или создаётся по умолчанию, если null -
text- отображаемый текст, null, если отсутствует -
rows- количество строк >= 0 -
columns- количество столбцов >= 0 - Исключения:
-
IllegalArgumentException- если аргументы строк или столбцов отрицательные.
Подробное описание методов
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
- Переопределяет:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "TextAreaUI"
- См. также:
createDefaultModel
protected Document createDefaultModel()
- Возвращает:
- модель документа по умолчанию
setTabSize
@BeanProperty(preferred=true, description="the number of characters to expand tabs to") public void setTabSize(int size)
- Параметры:
-
size- количество символов для расширения - См. также:
getTabSize
public int getTabSize()
- Возвращает:
- количество символов
setLineWrap
@BeanProperty(preferred=true, description="should lines be wrapped") public void setLineWrap(boolean wrap)
- Параметры:
-
wrap- указывает, нужно ли переносить строки - См. также:
getLineWrap
public boolean getLineWrap()
- Возвращает:
- перенос строк
setWrapStyleWord
@BeanProperty(description="should wrapping occur at word boundaries") public void setWrapStyleWord(boolean word)
- Параметры:
-
word- указывает, нужно ли использовать границы слов для переноса строк - См. также:
getWrapStyleWord
public boolean getWrapStyleWord()
- Возвращает:
- использовать ли границы слов вместо границ символов
- См. также:
getLineOfOffset
public int getLineOfOffset(int offset) throws BadLocationException
- Параметры:
-
offset- смещение >= 0 - Возвращает:
- номер строки >= 0
- Исключения:
-
BadLocationException- вызывается, если смещение меньше нуля или больше длины документа.
getLineCount
@BeanProperty(bound=false) public int getLineCount()
- Возвращает:
- количество строк > 0
getLineStartOffset
public int getLineStartOffset(int line) throws BadLocationException
- Параметры:
-
line- номер строки для преобразования >= 0 - Возвращает:
- смещение >= 0
- Исключения:
-
BadLocationException- вызывается, если строка меньше нуля или больше или равна количеству строк в документе (как сообщается getLineCount).
getLineEndOffset
public int getLineEndOffset(int line) throws BadLocationException
- Параметры:
-
line- строка >= 0 - Возвращает:
- смещение >= 0
- Исключения:
-
BadLocationException- Выбрасывается, если строка меньше нуля или больше или равна количеству строк в документе (как сообщается getLineCount).
insert
public void insert(String str, int pos)
- Параметры:
-
str- вставляемый текст -
pos- позиция вставки >= 0 - Исключения:
-
IllegalArgumentException- если pos — недопустимая позиция в модели - См. также:
append
public void append(String str)
- Параметры:
-
str- текст для добавления - См. также:
replaceRange
public void replaceRange(String str, int start, int end)
- Параметры:
-
str- текст для замены -
start- начальная позиция >= 0 -
end- конечная позиция >= начальная - Исключения:
-
IllegalArgumentException- если часть диапазона — недопустимая позиция в модели - См. также:
getRows
public int getRows()
- Возвращает:
- количество строк >= 0
setRows
@BeanProperty(bound=false, description="the number of rows preferred for display") public void setRows(int rows)
- Параметры:
-
rows- количество строк >= 0 - Исключения:
-
IllegalArgumentException- если строки меньше 0 - См. также:
getRowHeight
protected int getRowHeight()
- Возвращает:
- высота >= 1
getColumns
public int getColumns()
- Возвращает:
- количество столбцов >= 0
setColumns
@BeanProperty(bound=false, description="the number of columns preferred for display") public void setColumns(int columns)
- Параметры:
-
columns- количество столбцов >= 0 - Исключение:
-
IllegalArgumentException- если columns меньше 0 - См. также:
getColumnWidth
protected int getColumnWidth()
- Возвращает:
- ширина столбца >= 1
getPreferredSize
public Dimension getPreferredSize()
- Переопределяет:
-
getPreferredSizeв классеJComponent - Возвращает:
- размер
- См. также:
setFont
public void setFont(Font f)
- Переопределяет:
-
setFontв классеJComponent - Параметры:
-
f- шрифт для использования в качестве текущего шрифта - См. также:
paramString
protected String paramString()
null.- Переопределяет:
-
paramStringв классеJTextComponent - Возвращает:
- строковое представление этого JTextArea.
getScrollableTracksViewportWidth
@BeanProperty(bound=false) public boolean getScrollableTracksViewportWidth()
- Определено в:
-
getScrollableTracksViewportWidthв интерфейсеScrollable - Переопределяет:
-
getScrollableTracksViewportWidthв классеJTextComponent - Возвращает:
- true, если область просмотра должна форсировать ширину Scrollables в соответствие со своей собственной.
getPreferredScrollableViewportSize
@BeanProperty(bound=false) public Dimension getPreferredScrollableViewportSize()
- Определено в:
-
getPreferredScrollableViewportSizeв интерфейсеScrollable - Переопределяет:
-
getPreferredScrollableViewportSizeв классеJTextComponent - Возвращает:
- preferredSize JViewport, чьей view является это Scrollable.
- См. также:
getScrollableUnitIncrement
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
getRowHeight и getColumnWidth. Контейнеры прокрутки, такие как JScrollPane, будут использовать этот метод каждый раз, когда пользователь запрашивает прокрутку на единицу.
- Определено в:
-
getScrollableUnitIncrementв интерфейсеScrollable - Переопределяет:
-
getScrollableUnitIncrementв классеJTextComponent - Параметры:
-
visibleRect- область просмотра, видимая в области просмотра -
orientation- Either SwingConstants.VERTICAL или SwingConstants.HORIZONTAL. -
direction- Меньше нуля, чтобы прокрутить вверх/влево, больше нуля для вниз/вправо. - Возвращает:
- «единичный» шаг для прокрутки в указанном направлении
- Исключение:
-
IllegalArgumentException- для неверного orientation - См. также:
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
- Определено в:
-
getAccessibleContextв интерфейсеAccessible - Переопределяет:
-
getAccessibleContextв классеJTextComponent - Возвращает:
- AccessibleJTextArea, который служит AccessibleContext этого JTextArea
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/javax/swing/JTextArea.html