Класс JTextComponent
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable,Accessible,Scrollable
- Прямые известные подклассы:
-
JEditorPane,JTextArea,JTextField
@JavaBean(defaultProperty="UI") public abstract class JTextComponent extends JComponent implements Scrollable, Accessible
JTextComponent — базовый класс для текстовых компонентов Swing. Он стремится быть совместимым с классом java.awt.TextComponent там, где это возможно. Также предоставляются другие сервисы для дополнительной гибкости (помимо подключаемого пользовательского интерфейса и поддержки бинов). Информацию о том, как использовать функциональность этого класса, можно найти в Общих правилах использования текстовых компонентов — разделе учебника Java. - Изменения курсора
- Курсор — это подключаемый объект в текстовых компонентах Swing. Уведомления об изменениях положения курсора и выделения отправляются реализациям интерфейса
CaretListener, которые были зарегистрированы в текстовом компоненте. Пользовательский интерфейс установит по умолчанию курсор, если настроенный курсор не задан.
По умолчанию курсор отслеживает все изменения документа, выполненные в потоке обработки событий, и обновляет свое положение соответственно, если вставка происходит перед или на позиции курсора, или удаление происходит перед позицией курсора.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 в качестве стандартной раскладки. Обычно реализация внешнего вида установит другую раскладку клавиатуры, которая обращается к стандартной раскладке для тех привязок, которые не найдены в другой раскладке. Минимальные привязки включают:
- вставка содержимого в редактор для печатаемых клавиш.
- удаление содержимого с помощью клавиш Backspace и Del.
- перемещение курсора вперед и назад
- Разделение модели/представления
- Текстовые компоненты имеют разделение модели/представления. Текстовый компонент объединяет объекты, используемые для представления модели, представления и контроллера. Модель текстового документа может быть совместно использована другими представлениями, которые действуют как наблюдатели модели (например, документ может быть совместно использован несколькими компонентами).
Модель определяется интерфейсом
Document. Это предназначено для предоставления гибкого механизма хранения текста, который отслеживает изменения во время редактирования и может быть расширен до более сложных моделей. Интерфейсы модели предназначены для захвата возможностей выражения, заданных SGML — системой, используемой для выражения широкого спектра содержимого. Каждое изменение документа вызывает уведомление об изменениях в виде событияDocumentEvent, которое позволяет представлениям оставаться в курсе модели. Это событие отправляется наблюдателям, которые реализовали интерфейсDocumentListenerи зарегистрировали интерес к наблюдаемой модели. - Информация о местоположении
- Предоставляется возможность определения местоположения текста в представлении. Существуют два метода,
modelToView(int)иviewToModel(java.awt.Point)для определения этой информации. - Поддержка отмены/повтор
- Предоставляется поддержка механизма истории редактирования, чтобы позволить операции отмены/повтор. Текстовый компонент сам по умолчанию не предоставляет буфер истории, но предоставляет записи
UndoableEdit, которые могут быть использованы совместно с буфером истории для предоставления поддержки отмены/повтор. Поддержка предоставляется моделью документа, которая позволяет присоединять реализации UndoableEditListener. - Безопасность потоков
- Текстовые компоненты Swing обеспечивают некоторую поддержку потокобезопасных операций. Из-за высокой степени конфигурируемости текстовых компонентов, существует возможность обойти предоставляемую защиту. Защита в основном исходит от модели, поэтому документация
AbstractDocumentописывает предположения о предоставляемой защите. Методы, которые можно безопасно вызывать асинхронно, помечены комментариями. - Новые строки
- Обсуждение обработки новых строк см. в DefaultEditorKit.
- Поддержка печати
- Предоставляются несколько методов
printдля базовой печати документа. Если нужна более сложная печать, используйте методgetPrintable(java.text.MessageFormat, java.text.MessageFormat).
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, работающими с одной и той же версией Swing. Начиная с 1.4, поддержка долговременного хранения всех JavaBeans была добавлена в пакет java.beans. См. XMLEncoder.
- См. также:
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
class |
JTextComponent.AccessibleJTextComponent |
Этот класс реализует поддержку доступности для класса JTextComponent. |
static final class |
JTextComponent.DropLocation |
Представляет место падения для JTextComponent. |
static class |
JTextComponent.KeyBinding |
Запись привязки для создания привязок клавиш. |
Вложенные классы/интерфейсы, объявленные в классе javax.swing.JComponent
JComponent.AccessibleJComponent
Вложенные классы/интерфейсы, объявленные в классе java.awt.Container
Container.AccessibleAWTContainer
Вложенные классы/интерфейсы, объявленные в классе java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final String |
DEFAULT_KEYMAP |
Стандартная схема управления клавишами, которая будет использоваться всеми экземплярами JTextComponent, если не задана другая схема. |
static final String |
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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JTextComponent() |
Создает новый JTextComponent. |
Краткое описание методов
| Modifier and Type | Method | Description |
|---|---|---|
void |
addCaretListener |
Добавляет слушателя изменения курсора для уведомления о любых изменениях в курсоре. |
static Keymap |
addKeymap |
Добавляет новую схему в иерархию схем. |
void |
copy() |
Переносит текущий выделенный диапазон в связанной модели текста в буфер обмена системы, оставляя содержимое в модели текста. |
void |
cut() |
Переносит текущий выделенный диапазон в связанной модели текста в буфер обмена системы, удаляя содержимое из модели. |
protected void |
fireCaretUpdate |
Уведомляет всех слушателей, которые зарегистрировали интерес к уведомлениям об этом типе события. |
AccessibleContext |
getAccessibleContext() |
Получает AccessibleContext , связанный с этим JTextComponent. |
Action[] |
getActions() |
Получает список команд для редактора. |
Caret |
getCaret() |
Получает курсор, который позволяет навигацию по тексту в представлении. |
Color |
getCaretColor() |
Получает текущий цвет, используемый для отображения курсора. |
CaretListener[] |
getCaretListeners() |
Возвращает массив всех слушателей курсора, зарегистрированных в этом текстовом компоненте. |
int |
getCaretPosition() |
Возвращает позицию текстового курсора вставки для текстового компонента. |
Color |
getDisabledTextColor() |
Получает текущий цвет, используемый для отображения неактивного текста. |
Document |
getDocument() |
Получает модель, связанную с редактором. |
boolean |
getDragEnabled() |
Возвращает значение, указывающее, включена ли автоматическая обработка перетаскивания. |
final JTextComponent.DropLocation |
getDropLocation() |
Возвращает расположение, которое этот компонент должен визуально указывать как место падения во время операции перетаскивания над компонентом, или null, если в настоящее время не нужно показывать ни одного расположения. |
final DropMode |
getDropMode() |
Возвращает режим падения для этого компонента. |
char |
getFocusAccelerator() |
Возвращает ускоритель клавиш, который приведет к тому, что получающий текстовый компонент получит фокус. |
Highlighter |
getHighlighter() |
Получает объект, ответственный за создание выделений. |
InputMethodRequests |
getInputMethodRequests() |
Получает обработчик запросов метода ввода, который поддерживает запросы от методов ввода для этого компонента. |
Keymap |
getKeymap() |
Получает схему, активную в этом текстовом компоненте. |
static Keymap |
getKeymap |
Получает схему с заданным именем, ранее добавленную в документ. |
Insets |
getMargin() |
Возвращает отступ между границей текстового компонента и его текстом. |
NavigationFilter |
getNavigationFilter() |
Возвращает NavigationFilter. |
Dimension |
getPreferredScrollableViewportSize() |
Возвращает предпочтительный размер области просмотра для компонента просмотра. |
Printable |
getPrintable |
Возвращает Printable для печати содержимого этого JTextComponent. |
int |
getScrollableBlockIncrement |
Компоненты, отображающие логические строки или столбцы, должны вычислять приращение прокрутки, которое полностью отобразит один блок строк или столбцов в зависимости от значения ориентации. |
boolean |
getScrollableTracksViewportHeight() |
Возвращает true, если область просмотра должна всегда принудительно устанавливать высоту этого Scrollable в соответствии с высотой области просмотра. |
boolean |
getScrollableTracksViewportWidth() |
Возвращает true, если область просмотра должна всегда принудительно устанавливать ширину этого Scrollable в соответствии с шириной области просмотра. |
int |
getScrollableUnitIncrement |
Компоненты, отображающие логические строки или столбцы, должны вычислять приращение прокрутки, которое полностью отобразит одну новую строку или столбец в зависимости от значения ориентации. |
String |
getSelectedText() |
Возвращает выделенный текст, содержащийся в этом TextComponent. |
Color |
getSelectedTextColor() |
Получает текущий цвет, используемый для отображения выделенного текста. |
Color |
getSelectionColor() |
Получает текущий цвет, используемый для отображения выделения. |
int |
getSelectionEnd() |
Возвращает конечную позицию выделенного текста. |
int |
getSelectionStart() |
Возвращает начальную позицию выделенного текста. |
String |
getText() |
Возвращает текст, содержащийся в этом TextComponent. |
String |
getText |
Получает часть текста, представленную компонентом. |
String |
getToolTipText |
Возвращает строку, используемую в качестве подсказки для event. |
TextUI |
getUI() |
Получает фабрику пользовательского интерфейса для этого ориентированного на текст редактора. |
boolean |
isEditable() |
Возвращает логическое значение, указывающее, является ли этот TextComponent редактируемым или нет. |
static void |
loadKeymap |
Загружает схему с набором привязок. |
Rectangle |
modelToView |
Устарело. |
Rectangle2D |
modelToView2D |
Преобразует заданное расположение в модели в место в системе координат представления. |
void |
moveCaretPosition |
Перемещает курсор в новую позицию, оставляя метку, определенную последним вызовом setCaretPosition. |
protected String |
paramString() |
Возвращает строковое представление этого JTextComponent. |
void |
paste() |
Переносит содержимое буфера обмена системы в связанную модель текста. |
boolean |
print() |
Удобный метод печати, который отображает диалог печати, а затем печатает этот JTextComponent в режиме взаимодействия без заголовка и подвала. |
boolean |
print |
Удобный метод печати, который отображает диалог печати, а затем печатает этот JTextComponent в режиме взаимодействия со специфицированным заголовком и подвалом. |
boolean |
print |
Печатает содержимое этого JTextComponent. |
void |
read |
Инициализация из потока. |
void |
removeCaretListener |
Удаляет слушателя изменения курсора. |
static Keymap |
removeKeymap |
Удаляет схему с заданным именем, ранее добавленную в документ. |
void |
replaceSelection |
Заменяет текущее выделенное содержимое новым содержимым, представленным заданной строкой. |
protected void |
restoreComposedText() |
Восстанавливает составленный текст, ранее сохраненный методом saveComposedText. |
protected boolean |
saveComposedText |
Сохраняет составленный текст вокруг указанной позиции. |
void |
select |
Выделяет текст между указанными начальной и конечной позициями. |
void |
selectAll() |
Выделяет весь текст в TextComponent. |
void |
setCaret |
Устанавливает используемый курсор. |
void |
setCaretColor |
Устанавливает текущий цвет, используемый для отображения курсора. |
void |
setCaretPosition |
Устанавливает позицию курсора вставки текста для TextComponent. |
void |
setDisabledTextColor |
Устанавливает текущий цвет, используемый для отображения отключенного текста. |
void |
setDocument |
Связывает редактор с текстовым документом. |
void |
setDragEnabled |
Включает или выключает автоматическую обработку перетаскивания. |
final void |
setDropMode |
Устанавливает режим выгрузки для данного компонента. |
void |
setEditable |
Устанавливает указанный булевый параметр, чтобы указать, является ли этот TextComponent редактируемым. |
void |
setFocusAccelerator |
Устанавливает комбинацию клавиш, которая приведет к тому, что получающий текстовый компонент получит фокус. |
void |
setHighlighter |
Устанавливает используемый выделенный текст. |
void |
setKeymap |
Устанавливает ключевую карту для привязки событий к действиям. |
void |
setMargin |
Устанавливает отступ между границей текстового компонента и самим текстом. |
void |
setNavigationFilter |
Устанавливает NavigationFilter. |
void |
setSelectedTextColor |
Устанавливает текущий цвет, используемый для отображения выделенного текста. |
void |
setSelectionColor |
Устанавливает текущий цвет, используемый для отображения выделения. |
void |
setSelectionEnd |
Устанавливает конец выделения в указанную позицию. |
void |
setSelectionStart |
Устанавливает начало выделения в указанную позицию. |
void |
setText |
Устанавливает текст этого TextComponent на указанный текст. |
void |
setUI |
Устанавливает фабрику пользовательского интерфейса для этого текстового редактора. |
void |
updateUI() |
Перезагружает подключаемый пользовательский интерфейс. |
int |
viewToModel |
Устарело. заменено на viewToModel2D(Point2D)
|
int |
viewToModel2D |
Преобразует заданную позицию в системе координат представления в ближайшее представительное расположение в модели. |
void |
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, 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
Методы, объявленные в классе 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
Подробное описание полей
FOCUS_ACCELERATOR_KEY
public static final String FOCUS_ACCELERATOR_KEY
- См. также:
DEFAULT_KEYMAP
public static final String DEFAULT_KEYMAP
JTextComponent экземплярами, если не установлена другая карта клавиш.- См. также:
Подробное описание конструкторов
JTextComponent
public JTextComponent()
JTextComponent. Устанавливаются слушатели событий курсора, и устанавливается подключаемый пользовательский интерфейс. Компонент помечается как редактируемый. Менеджер компоновки не используется, так как компоновка управляется подсистемой представления текста. Модель документа установлена в null.Подробное описание методов
getUI
public TextUI getUI()
- Переопределяет:
-
getUIв классеJComponent - Возвращает:
- фабрику
setUI
public void setUI(TextUI ui)
- Параметры:
-
ui- фабрика
updateUI
public void updateUI()
getUIClassID(). Тип пользовательского интерфейса — TextUI. invalidate вызывается после установки пользовательского интерфейса.- Переопределяет:
-
updateUIв классеJComponent - См. также:
addCaretListener
public void addCaretListener(CaretListener listener)
- Параметры:
-
listener- слушатель, который необходимо добавить - См. также:
removeCaretListener
public void removeCaretListener(CaretListener listener)
- Параметры:
-
listener- слушатель, который необходимо удалить - См. также:
getCaretListeners
@BeanProperty(bound=false) public CaretListener[] getCaretListeners()
- Возвращает:
- все слушатели событий курсора этого компонента или пустой массив, если слушатели событий курсора не зарегистрированы
- С:
- 1.4
- См. также:
fireCaretUpdate
protected void fireCaretUpdate(CaretEvent e)
- Параметры:
-
e- событие - См. также:
setDocument
@BeanProperty(expert=true, description="the text document model") public void setDocument(Document doc)
- Параметры:
-
doc- документ для отображения/редактирования - См. также:
getDocument
public Document getDocument()
- Возвращает:
- модель
getActions
@BeanProperty(bound=false) public Action[] getActions()
- Возвращает:
- список команд
setMargin
@BeanProperty(description="desired space between the border and text area") public void setMargin(Insets m)
Border использует это значение для создания соответствующего отступа. Однако, если на текстовом компоненте установлен нестандартный отступ, ответственность за создание соответствующего отступа (иначе это свойство будет фактически проигнорировано) лежит на этом Border объекте. Это вызывает перерисовку компонента. Событие PropertyChange ("margin") отправляется всем слушателям.- Параметры:
-
m- расстояние между границей и текстом
getMargin
public Insets getMargin()
- Возвращает:
- отступ
getCaret
public Caret getCaret()
- Возвращает:
- курсор
setCaret
@BeanProperty(expert=true, description="the caret used to select/navigate") public void setCaret(Caret c)
- Параметры:
-
c- курсор - См. также:
getHighlighter
public Highlighter getHighlighter()
- Возвращает:
- выделитель
setHighlighter
@BeanProperty(expert=true, description="object responsible for background highlights") public void setHighlighter(Highlighter h)
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 компонента должен быть non-null. Значение по умолчанию для свойства dragEnabled равно false. Задача обработки этого свойства и распознавания жеста перетаскивания пользователя лежит на реализации визуального оформления, а именно, на TextUI компонента. При включённой автоматической обработке перетаскивания, большинство визуальных оформлений (включая те, которые наследуют от BasicLookAndFeel) начинают операцию перетаскивания и перемещения всякий раз, когда пользователь нажимает кнопку мыши над выделенным элементом и затем перемещает мышь на несколько пикселей. Поэтому установка этого свойства в true может оказать тонкое влияние на поведение выделенных элементов.
Если используется визуальное оформление, которое игнорирует это свойство, вы всё равно можете начать операцию перетаскивания и перемещения, вызвав exportAsDrag на TransferHandler компонента.
- Parameters:
-
b- включает или отключает автоматическую обработку перетаскивания - Throws:
-
HeadlessException- еслиbимеет значениеtrueиGraphicsEnvironment.isHeadless()возвращаетtrue - Since:
- 1.4
- See Also:
getDragEnabled
public boolean getDragEnabled()
- Returns:
- значение свойства
dragEnabled - Since:
- 1.4
- See Also:
setDropMode
public final void setDropMode(DropMode dropMode)
DropMode.USE_SELECTION. Тем не менее, рекомендуется использовать DropMode.INSERT, для улучшенного пользовательского опыта. Он обеспечивает аналогичное поведение при выгрузке между текстовыми позициями, но не влияет на фактическое выделение текста и позицию курсора. JTextComponents поддерживают следующие режимы выгрузки:
DropMode.USE_SELECTIONDropMode.INSERT
Режим выгрузки имеет значение только в том случае, если у этого компонента есть TransferHandler , который принимает выгрузки.
- Parameters:
-
dropMode- используемый режим выгрузки - Throws:
-
IllegalArgumentException- если режим выгрузки не поддерживается илиnull - Since:
- 1.6
- See Also:
getDropMode
public final DropMode getDropMode()
- Returns:
- режим выгрузки для данного компонента
- Since:
- 1.6
- See Also:
getDropLocation
@BeanProperty(bound=false) public final JTextComponent.DropLocation getDropLocation()
null , если в настоящее время не нужно показывать никакое расположение. Этот метод не предназначен для запроса места выгрузки из TransferHandler, так как место выгрузки устанавливается только после того, как TransferHandler's canImport завершил свою работу и разрешил показать расположение.
При изменении этого свойства компонент генерирует событие изменения свойства с именем "dropLocation".
- Returns:
- место выгрузки
- Since:
- 1.6
- See Also:
getKeymap
public Keymap getKeymap()
- Returns:
- карта клавиш
addKeymap
public static Keymap addKeymap(String nm, Keymap parent)
- Parameters:
-
nm- имя карты клавиш (должно быть уникальным в наборе именованных карт клавиш в документе); имя может бытьnull, если карта клавиш не именованная, но вызывающий объект отвечает за управление ссылкой, так как не именованная карта клавиш не может быть получена по имени -
parent- родительская карта клавиш; может бытьnull, если не нужно разрешать связывание в другой карте клавиш - Returns:
- карта клавиш
removeKeymap
public static Keymap removeKeymap(String nm)
null именами не могут быть удалены таким образом.- Parameters:
-
nm- имя карты клавиш для удаления - Returns:
- карта клавиш, которая была удалена
getKeymap
public static Keymap getKeymap(String nm)
null именованными картами клавиш.- Parameters:
-
nm- имя карты клавиш - Returns:
- карта клавиш
loadKeymap
public static void loadKeymap(Keymap map, JTextComponent.KeyBinding[] bindings, Action[] actions)
Загружает карту клавиш с набором связей. Это можно использовать для загрузки статической таблицы определений в некоторую карту клавиш. Следующий пример иллюстрирует пример привязки некоторых клавиш к действиям вырезания, копирования и вставки, связанным с 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. - Parameters:
-
map- карта клавиш -
bindings- связи -
actions- набор действий
getCaretColor
public Color getCaretColor()
- Returns:
- цвет
setCaretColor
@BeanProperty(preferred=true, description="the color used to render the caret") public void setCaretColor(Color c)
null восстанавливает цвет по умолчанию. Установка цвета приводит к срабатыванию события PropertyChange ("caretColor").- Parameters:
-
c- цвет - See Also:
getSelectionColor
public Color getSelectionColor()
- Returns:
- цвет
setSelectionColor
@BeanProperty(preferred=true, description="color used to render selection background") public void setSelectionColor(Color c)
null эквивалентна установке Color.white. Установка цвета вызывает срабатывание события PropertyChange ("selectionColor").- Parameters:
-
c- цвет - See Also:
getSelectedTextColor
public Color getSelectedTextColor()
- Returns:
- цвет
setSelectedTextColor
@BeanProperty(preferred=true, description="color used to render selected text") public void setSelectedTextColor(Color c)
null эквивалентна Color.black. Установка цвета вызывает срабатывание события PropertyChange ("selectedTextColor").- Parameters:
-
c- цвет - See Also:
getDisabledTextColor
public Color getDisabledTextColor()
- Returns:
- цвет
setDisabledTextColor
@BeanProperty(preferred=true, description="color used to render disabled text") public void setDisabledTextColor(Color c)
- Parameters:
-
c- цвет - See Also:
replaceSelection
public void replaceSelection(String content)
Этот метод используется по умолчанию для реализации действия вставки содержимого, которое привязывается к действиям ввода с клавиатуры.
- Parameters:
-
content- содержимое, которым нужно заменить выделение
getText
public String getText(int offs, int len) throws BadLocationException
- Parameters:
-
offs- смещение ≥ 0 -
len- длина ≥ 0 - Returns:
- текст
- Throws:
-
BadLocationException- если смещение или длина некорректны
modelToView
@Deprecated(since="9") public Rectangle modelToView(int pos) throws BadLocationException
modelToView2D(int)
- Parameters:
-
pos- позиция ≥ 0 - Returns:
- координаты как прямоугольник, где (r.x, r.y) - позиция в системе координат, или null, если у компонента еще нет положительного размера.
- Throws:
-
BadLocationException- если заданная позиция не представляет собой действительную позицию в связанном документе - См. также:
modelToView2D
public Rectangle2D modelToView2D(int pos) throws BadLocationException
- Parameters:
-
pos- позиция>= 0 - Returns:
- координаты как прямоугольник, где (r.x, r.y) - позиция в системе координат, или null, если у компонента еще нет положительного размера.
- Throws:
-
BadLocationException- если заданная позиция не представляет собой действительную позицию в связанном документе - Since:
- 9
- См. также:
viewToModel
@Deprecated(since="9") public int viewToModel(Point pt)
viewToModel2D(Point2D)
- Parameters:
-
pt- позиция в представлении для преобразования - Returns:
- смещение ≥ 0 от начала документа, или -1, если у компонента еще нет положительного размера.
- См. также:
viewToModel2D
public int viewToModel2D(Point2D pt)
- Parameters:
-
pt- позиция в представлении для преобразования - Returns:
- смещение
>= 0от начала документа, или-1если у компонента еще нет положительного размера. - Since:
- 9
- См. также:
cut
public void cut()
null выделений.- См. также:
copy
public void copy()
null выделений.- См. также:
paste
public void paste()
- См. также:
moveCaretPosition
public void moveCaretPosition(int pos)
setCaretPosition. Это формирует выделение. Если документ null, ничего не делает. Позиция должна быть между 0 и длиной текста компонента, иначе будет брошено исключение.- Parameters:
-
pos- позиция - Throws:
-
IllegalArgumentException- если значение, переданное дляpositionменьше нуля или больше длины текста компонента - См. также:
setFocusAccelerator
@BeanProperty(description="accelerator character used to grab focus") public void setFocusAccelerator(char aKey)
- Parameters:
-
aKey- клавиша - См. также:
getFocusAccelerator
public char getFocusAccelerator()
- Returns:
- клавиша
read
public void read(Reader in, Object desc) throws IOException
- Parameters:
-
in- поток для чтения -
desc- объект, описывающий поток; это может быть строка, файл, URL и т.д. Некоторые типы документов (например, html) могут использовать эту информацию; если не null, она добавляется как свойство документа - Throws:
-
IOException- как бросается при использовании потока для инициализации - См. также:
write
public void write(Writer out) throws IOException
- Parameters:
-
out- выходной поток - Throws:
-
IOException- при любой ошибке ввода-вывода
setCaretPosition
@BeanProperty(bound=false, description="the caret position") public void setCaretPosition(int position)
TextComponent. Обратите внимание, что курсор отслеживает изменения, поэтому он может сместиться, если исходный текст компонента изменён. Если документ null, ничего не происходит. Позиция должна находиться в диапазоне от 0 до длины текста компонента, иначе будет брошено исключение.- Parameters:
-
position- позиция - Throws:
-
IllegalArgumentException- если значение, предоставленное дляposition, меньше нуля или больше длины текста компонента
getCaretPosition
public int getCaretPosition()
- Returns:
- позиция курсора вставки текста для текстового компонента ≥ 0
setText
@BeanProperty(bound=false, description="the text of this component") public void setText(String t)
TextComponent в указанный текст. Если текст null или пустой, происходит удаление старого текста. После вставки текста, положение курсора определяется реализацией класса курсора. Обратите внимание, что текст не является свойством привязки, поэтому при изменении не генерируется событие PropertyChangeEvent
. Для прослушивания изменений текста используйте DocumentListener.
- Parameters:
-
t- новый текст для установки - See Also:
getText
public String getText()
TextComponent. Если базовый документ null, возвращается NullPointerException. Обратите внимание, что текст не является свойством привязки, поэтому при изменении не генерируется событие PropertyChangeEvent
. Для прослушивания изменений текста используйте DocumentListener. - Returns:
- текст
- Throws:
-
NullPointerException- если документnull - See Also:
getSelectedText
@BeanProperty(bound=false) public String getSelectedText()
TextComponent. Если выбор null или документ пустой, возвращает null. - Returns:
- текст
- Throws:
-
IllegalArgumentException- если выбор не имеет допустимого соответствия в документе по каким-либо причинам - See Also:
isEditable
public boolean isEditable()
TextComponent.- Returns:
- логическое значение
- See Also:
setEditable
@BeanProperty(description="specifies if the text can be edited") public void setEditable(boolean b)
TextComponent быть редактируемым. Событие PropertyChange ("editable") генерируется при изменении состояния.- Parameters:
-
b- устанавливаемое логическое значение - See Also:
getSelectionStart
public int getSelectionStart()
- Returns:
- начальная позиция ≥ 0
setSelectionStart
@BeanProperty(bound=false, description="starting location of the selection.") public void setSelectionStart(int selectionStart)
Это доступно для обратной совместимости с кодом, который вызывал этот метод для java.awt.TextComponent. Это реализовано для перенаправления вызова в реализацию Caret, где фактически поддерживается выбор.
- Parameters:
-
selectionStart- начальная позиция текста ≥ 0
getSelectionEnd
public int getSelectionEnd()
- Returns:
- конечная позиция ≥ 0
setSelectionEnd
@BeanProperty(bound=false, description="ending location of the selection.") public void setSelectionEnd(int selectionEnd)
Это доступно для обратной совместимости с кодом, который вызывал этот метод для java.awt.TextComponent. Это реализовано для перенаправления вызова в реализацию Caret, где фактически поддерживается выбор.
- Parameters:
-
selectionEnd- конечная позиция текста ≥ 0
select
public void select(int selectionStart, int selectionEnd)
Этот метод устанавливает начальную и конечную позиции выделенного текста, соблюдая ограничение, что начальная позиция должна быть больше или равна нулю. Конечная позиция должна быть больше или равна начальной позиции и меньше или равна длине текста компонента.
Если вызывающий предоставляет несовместимые или недопустимые значения, метод молча накладывает эти ограничения, без ошибок. В частности, если начальная или конечная позиция больше длины текста, она устанавливается равной длине текста. Если начальная позиция меньше нуля, она устанавливается равной нулю, а если конечная позиция меньше начальной, она устанавливается равной начальной позиции.
Этот вызов предоставлен для обратной совместимости. Он перенаправляется на вызов setCaretPosition, за которым следует вызов moveCaretPosition. Предпочтительный способ управления выделением — вызывать эти методы напрямую.
- Parameters:
-
selectionStart- начальная позиция текста -
selectionEnd- конечная позиция текста - See Also:
selectAll
public void selectAll()
TextComponent. Не делает ничего при null или пустом документе.getToolTipText
public String getToolTipText(MouseEvent event)
event. Возвращает одно из следующих значений: - Если
setToolTipTextбыл вызван с ненулевымnullзначением, оно будет возвращено, иначе - Возвращается значение, полученное при вызове
getToolTipTextна UI.
JTextComponent не регистрирует себя в ToolTipManager. Это означает, что подсказки НЕ будут отображаться для TextUI, пока не будет вызвано registerComponent для ToolTipManager.- Overrides:
-
getToolTipTextв классеJComponent - Parameters:
-
event- событие - Returns:
- строка, используемая в качестве подсказки для
event - See Also:
getPreferredScrollableViewportSize
@BeanProperty(bound=false) public Dimension getPreferredScrollableViewportSize()
- Specified by:
-
getPreferredScrollableViewportSizeв интерфейсеScrollable - Returns:
- предпочтительный размер
preferredSizeJViewport, чей вид — этотScrollable - See Also:
getScrollableUnitIncrement
public int getScrollableUnitIncrement(Rectangle visibleRect, int orientation, int direction)
Реализация по умолчанию просто возвращает 10% видимой области. Подклассы, скорее всего, смогут предоставить гораздо более разумное значение.
- Specified by:
-
getScrollableUnitIncrementв интерфейсеScrollable - Parameters:
-
visibleRect- видимая область представления в пределах области прокрутки -
orientation- либоSwingConstants.VERTICAL, либоSwingConstants.HORIZONTAL -
direction- меньше нуля для прокрутки вверх/влево, больше нуля для прокрутки вниз/вправо - Returns:
- приращение "единицы" для прокрутки в указанном направлении
- Throws:
-
IllegalArgumentException- для неверной ориентации - See Also:
getScrollableBlockIncrement
public int getScrollableBlockIncrement(Rectangle visibleRect, int orientation, int direction)
По умолчанию реализация просто возвращает видимую область. Подклассы, вероятно, смогут предоставить гораздо более разумное значение.
- Specified by:
-
getScrollableBlockIncrementin interfaceScrollable - Parameters:
-
visibleRect- область просмотра, видимая внутри viewport -
orientation- либоSwingConstants.VERTICALлибоSwingConstants.HORIZONTAL -
direction- меньше нуля, чтобы прокрутить вверх/влево, больше нуля для вниз/вправо - Returns:
- приращение "блока" для прокрутки в заданном направлении
- Throws:
-
IllegalArgumentException- для неверной ориентации - See Also:
getScrollableTracksViewportWidth
@BeanProperty(bound=false) public boolean getScrollableTracksViewportWidth()
Scrollable для соответствия ширине viewport. Например, обычный текстовый виджет, поддерживающий перенос строк, вернет true здесь, поскольку нежелательно, чтобы переносимые строки исчезали за правым краем viewport. Обратите внимание, что возвращение true для Scrollable с предком-JScrollPane фактически отключает горизонтальную прокрутку. Контейнеры прокрутки, такие как JViewport, будут использовать этот метод каждый раз при валидации.
- Specified by:
-
getScrollableTracksViewportWidthin interfaceScrollable - Returns:
- true, если viewport должен форсировать ширину
Scrollableдля соответствия своей собственной ширине
getScrollableTracksViewportHeight
@BeanProperty(bound=false) public boolean getScrollableTracksViewportHeight()
Scrollable для соответствия высоте viewport. Например, текстовый виджет с колонками, выравнивающий текст слева направо, может эффективно отключить вертикальную прокрутку, вернув true здесь. Контейнеры прокрутки, такие как JViewport, будут использовать этот метод каждый раз при валидации.
- Specified by:
-
getScrollableTracksViewportHeightin interfaceScrollable - Returns:
- true, если viewport должен форсировать высоту объекта Scrollable для соответствия своей собственной высоте
public boolean print() throws PrinterException
JTextComponent в режиме взаимодействия без заголовка или подвала. Примечание: этот метод блокируется до завершения печати. Примечание: в режиме без графического интерфейса диалоги не будут отображаться.
Этот метод вызывает полнофункциональный метод print для выполнения печати.
- Returns:
-
true, если печать не была отменена пользователем - Throws:
-
PrinterException- если в системе печати произошла ошибка, которая привела к прерыванию задания -
SecurityException- если данному потоку не разрешено инициировать запрос на задание печати - Since:
- 1.6
- See Also:
public boolean print(MessageFormat headerFormat, MessageFormat footerFormat) throws PrinterException
JTextComponent в режиме взаимодействия с указанным заголовком и подвалом. Примечание: этот метод блокируется до завершения печати. Примечание: в режиме без графического интерфейса диалоги не будут отображаться.
Этот метод вызывает полнофункциональный метод print для выполнения печати.
- Parameters:
-
headerFormat- текст, в форматеMessageFormat, используемый в качестве заголовка, илиnullдля отсутствия заголовка -
footerFormat- текст, в форматеMessageFormat, используемый в качестве подвала, илиnullдля отсутствия подвала - Returns:
-
true, если печать не была отменена пользователем - Throws:
-
PrinterException- если в системе печати произошла ошибка, которая привела к прерыванию задания -
SecurityException- если данному потоку не разрешено инициировать запрос на задание печати - Since:
- 1.6
- See Also:
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 для диалога печати или указать принтер, на который печатать, если диалог не отображается.
Параметр attributes можно использовать для предоставления начальных значений для диалога печати или для предоставления необходимых атрибутов, когда диалог не отображается. attributes можно использовать для управления способом печати, например, двусторонней или односторонней печатью.
Параметр interactive boolean позволяет указать, выполнять ли печать в взаимодействующем режиме. Если true, во время печати отображается диалог прогресса с опцией отмены. Этот диалог является модальным, когда print вызывается в потоке обработки событий и немодальным в противном случае. **Предупреждение**: вызов этого метода в потоке обработки событий с
interactive false блокирует все события, включая перерисовку, от обработки до завершения печати. Это рекомендуется только при печати из приложения без видимого графического интерфейса.
Примечание: в режиме без графического интерфейса параметры 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);
- Parameters:
-
headerFormat- текст, в форматеMessageFormat, используемый в качестве заголовка, илиnullдля отсутствия заголовка -
footerFormat- текст, в форматеMessageFormat, используемый в качестве подвала, илиnullдля отсутствия подвала -
showPrintDialog-trueдля отображения диалога печати,falseв противном случае -
service- начальныйPrintService, илиnullдля значения по умолчанию -
attributes- атрибуты задания, применяемые к заданию печати, илиnullдля отсутствия -
interactive- выполнять печать в интерактивном режиме - Returns:
-
true, если печать не была отменена пользователем - Throws:
-
PrinterException- если в системе печати произошла ошибка, которая привела к прерыванию задания -
SecurityException- если данному потоку не разрешено инициировать запрос на задание печати - Since:
- 1.6
- See Also:
getPrintable
public Printable getPrintable(MessageFormat headerFormat, MessageFormat footerFormat)
Возвращаемый объект использует те же форматирования, что и этот документ. Разработчик отвечает за то, чтобы форматирования не изменялись во время использования этого объекта. Поведение печати не определено, если форматирования изменяются во время печати.
Текст заголовка и подвала страницы можно добавить, предоставив соответствующие аргументы. Код печати запрашивает у форматов значение, которое может быть включено в отформатированную строку: число текущей страницы.
При печати возвращаемый объект форматирует содержимое документа, учитывая размер страницы. Для правильного переноса строк размер области печати всех страниц должен быть одинаковым. См. PageFormat.getImageableWidth().
Этот метод потокобезопасен, хотя большинство методов Swing таковыми не являются. Подробнее о потоках в Swing см. Потоки в Swing.
Возвращаемый объект можно использовать для печати в любом потоке.
В этой реализации вся отрисовка выполняется в потоке обработки событий, независимо от потока, в котором используется метод.
- Parameters:
-
headerFormat- текст, используемый в качестве заголовка, илиnullдля отсутствия заголовка -
footerFormat- текст, используемый в качестве подвала, илиnullдля отсутствия подвала - Returns:
- объект для печати содержимого этого документа
- Since:
- 1.6
- See Also:
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
- Specified by:
-
getAccessibleContextв интерфейсеAccessible - Overrides:
-
getAccessibleContextв классеComponent - Returns:
- объект, представляющий контекст доступности этого объекта
paramString
protected String paramString()
Переопределение метода для предоставления информации о специфических новых аспектах компонентов JFC.
- Overrides:
-
paramStringв классеJComponent - Returns:
- строковое представление этого объекта
getInputMethodRequests
@BeanProperty(bound=false) public InputMethodRequests getInputMethodRequests()
Component- Overrides:
-
getInputMethodRequestsв классеComponent - Returns:
- обработчик запросов метода ввода для этого компонента, по умолчанию
null - See Also:
saveComposedText
protected boolean saveComposedText(int pos)
- Parameters:
-
pos- позиция документа для определения местоположения составленного текста - Returns:
-
trueесли составленный текст существует и сохранен,falseв противном случае - Since:
- 1.7
- See Also:
restoreComposedText
protected void restoreComposedText()
saveComposedText. Сохраненный составленный текст вставляется обратно в документ. Этот метод следует вызывать только в том случае, если метод saveComposedText возвращает значение true.- Since:
- 1.7
- See Also:
© 1993, 2023, 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/21/docs/api/java.desktop/javax/swing/text/JTextComponent.html
modelToView2D(int)