Класс 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.
- Since:
- 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()
- Возвращает:
-
true, если строки переносятся, иначеfalse
setWrapStyleWord
@BeanProperty(description="should wrapping occur at word boundaries") public void setWrapStyleWord(boolean word)
- Параметры:
-
word- указывает, должны ли использоваться границы слов для переноса строк - См. также:
getWrapStyleWord
public boolean getWrapStyleWord()
- Возвращает:
-
true, если стиль переноса должен быть по границам слов, а не символов, иначеfalse - См. также:
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)
- Parameters:
-
str- текст, используемый в качестве замены -
start- начальная позиция >= 0 -
end- конечная позиция >= start - Throws:
-
IllegalArgumentException- если часть диапазона является недопустимой позицией в модели - See Also:
getRows
public int getRows()
- Returns:
- количество строк >= 0
setRows
@BeanProperty(bound=false, description="the number of rows preferred for display") public void setRows(int rows)
- Parameters:
-
rows- количество строк >= 0 - Throws:
-
IllegalArgumentException- если rows меньше 0 - See Also:
getRowHeight
protected int getRowHeight()
- Returns:
- высота >= 1
getColumns
public int getColumns()
- Returns:
- количество столбцов >= 0
setColumns
@BeanProperty(bound=false, description="the number of columns preferred for display") public void setColumns(int columns)
- Parameters:
-
columns- количество столбцов >= 0 - Throws:
-
IllegalArgumentException- если columns меньше 0 - See Also:
getColumnWidth
protected int getColumnWidth()
- Returns:
- ширина столбца >= 1
getPreferredSize
public Dimension getPreferredSize()
- Overrides:
-
getPreferredSizeв классеJComponent - Returns:
- размер
- See Also:
setFont
public void setFont(Font f)
- Overrides:
-
setFontв классеJComponent - Parameters:
-
f- шрифт, используемый в качестве текущего шрифта - See Also:
paramString
protected String paramString()
null.- Overrides:
-
paramStringв классеJTextComponent - Returns:
- строковое представление этого JTextArea.
getScrollableTracksViewportWidth
@BeanProperty(bound=false) public boolean getScrollableTracksViewportWidth()
- Specified by:
-
getScrollableTracksViewportWidthв интерфейсеScrollable - Overrides:
-
getScrollableTracksViewportWidthв классеJTextComponent - Returns:
- true, если область просмотра должна принудительно устанавливать ширину Scrollables в соответствии со своей собственной.
getPreferredScrollableViewportSize
@BeanProperty(bound=false) public Dimension getPreferredScrollableViewportSize()
- Specified by:
-
getPreferredScrollableViewportSizeв интерфейсеScrollable - Overrides:
-
getPreferredScrollableViewportSizeв классеJTextComponent - Returns:
- PreferredSize JViewport, чей view — это данный Scrollable.
- See Also:
getScrollableUnitIncrement
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
getRowHeight и getColumnWidth. Контейнеры прокрутки, такие как JScrollPane, будут использовать этот метод каждый раз, когда пользователь запрашивает единичную прокрутку.
- Specified by:
-
getScrollableUnitIncrementв интерфейсеScrollable - Overrides:
-
getScrollableUnitIncrementв классеJTextComponent - Parameters:
-
visibleRect- область просмотра, видимая в области просмотра -
orientation- Либо SwingConstants.VERTICAL, либо SwingConstants.HORIZONTAL. -
direction- Меньше нуля для прокрутки вверх/влево, больше нуля для прокрутки вниз/вправо. - Returns:
- Шаг прокрутки "единицы" в указанном направлении
- Throws:
-
IllegalArgumentException- для недопустимого ориентации - See Also:
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
- Specified by:
-
getAccessibleContextв интерфейсеAccessible - Overrides:
-
getAccessibleContextв классеJTextComponent - Returns:
- AccessibleJTextArea, служащий AccessibleContext этого JTextArea
© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/JTextArea.html