Класс JEditorPane
- Все реализованные интерфейсы:
-
ImageObserver,MenuContainer,Serializable,Accessible,Scrollable
- Непосредственные известные подклассы:
JTextPane
@JavaBean(defaultProperty="UIClassID", description="A text component to edit various types of content.") public class JEditorPane extends JTextComponent
Этот компонент использует реализации EditorKit для реализации своего поведения. Он эффективно преобразуется в соответствующий редактор текста для типа содержимого, которое ему передается. Тип содержимого, к которому привязан редактор в любой момент времени, определяется установленным в данный момент EditorKit. Если содержимое задано как новая ссылка на URL, его тип используется для определения EditorKit который должен использоваться для загрузки содержимого.
По умолчанию известны следующие типы содержимого:
- text/plain
- Простой текст, который является значением по умолчанию, если тип не распознается. Используемый набор инструментов в этом случае представляет собой расширение
DefaultEditorKit, которое создаёт вид обернутого простого текста. - text/html
- Текст HTML. Используемый набор инструментов в данном случае — класс
javax.swing.text.html.HTMLEditorKit, обеспечивающий поддержку HTML 3.2. - text/rtf
- Текст RTF. Используемый набор инструментов в данном случае — класс
javax.swing.text.rtf.RTFEditorKit, обеспечивающий ограниченную поддержку формата Rich Text.
Существует несколько способов загрузки содержимого в этот компонент.
- Метод
setTextможет использоваться для инициализации компонента из строки. В этом случае будет использоваться текущийEditorKit, а тип содержимого ожидается как соответствующего типа. - Метод
readможет быть использован для инициализации компонента изReader. Обратите внимание, что если тип содержимого является HTML, относительные ссылки (например, для изображений) не могут быть разрешены, если не используется тег <base> или свойство Base вHTMLDocument. В этом случае будет использоваться текущийEditorKit, а тип содержимого ожидается как соответствующего типа. - Метод
setPageможет использоваться для инициализации компонента из URL. В этом случае тип содержимого будет определяться по URL, и зарегистрированныйEditorKitдля этого типа содержимого будет установлен.
Некоторые виды содержимого могут обеспечивать поддержку гиперссылок, генерируя события гиперссылок. HTML EditorKit будет генерировать события гиперссылок, если JEditorPane не редактируется (был вызван JEditorPane.setEditable(false);). Если в документе встроены HTML-фреймы, обычный ответ — изменение части текущего документа. Следующий фрагмент кода — возможная реализация обработчика событий гиперссылок, которая обрабатывает события HTML-фреймов особым образом и просто отображает любые другие активированные гиперссылки.
class Hyperactive implements HyperlinkListener {
public void hyperlinkUpdate(HyperlinkEvent e) {
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
JEditorPane pane = (JEditorPane) e.getSource();
if (e instanceof HTMLFrameHyperlinkEvent) {
HTMLFrameHyperlinkEvent evt = (HTMLFrameHyperlinkEvent)e;
HTMLDocument doc = (HTMLDocument)pane.getDocument();
doc.processHTMLFrameHyperlinkEvent(evt);
} else {
try {
pane.setPage(e.getURL());
} catch (Throwable t) {
t.printStackTrace();
}
}
}
}
}
Для получения информации о том, как настроить отображение text/html, см. W3C_LENGTH_UNITS и HONOR_DISPLAY_PROPERTIES
Информация, зависящая от культуры в некоторых документах, обрабатывается механизмом, называемым кодировкой символов. Кодировка символов — это однозначное отображение членов набора символов (букв, иероглифов, цифр, символов или управляющих функций) в конкретные числовые значения кода. Она представляет способ хранения файла. Примерами кодировок символов являются ISO-8859-1, ISO-8859-5, Shift-jis, Euc-jp и UTF-8. При передаче файла агенту пользователя (JEditorPane) он преобразуется в наборы символов документа (ISO-10646, псевдоним Unicode).
Существует несколько способов установить сопоставление кодировки символов с JEditorPane.
- Один способ — указать кодировку символов как параметр MIME-типа. Это будет установлено вызовом метода
setContentType. Если содержимое загружается методомsetPage, тип содержимого будет установлен в соответствии с указанием URL. Если файл загружается напрямую, ожидается, что тип содержимого будет установлен до загрузки. - Кодировку символов также можно указать в самом документе. Для этого необходимо прочитать документ до определения желаемой кодировки символов. Для обработки этого ожидается, что операция
EditorKit.read броситChangedCharSetException, которая будет перехвачена. Затем чтение перезапускается с новым ридером, который использует кодировку символов, указанную вChangedCharSetException(являющейсяIOException).
- Новые строки
- Обсуждение обработки новых строк см. в DefaultEditorKit.
Предупреждение: Swing не является потокобезопасным. Более подробную информацию см. в Политика потоков Swing.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или RMI между приложениями, работающими с одной версией Swing. Начиная с версии 1.4, поддержка долгосрочного хранения всех JavaBeans добавлена в пакет java.beans. См. XMLEncoder.
- С:
- 1.2
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
protected class |
JEditorPane.AccessibleJEditorPane |
Этот класс реализует поддержку доступности для класса JEditorPane. |
protected class |
JEditorPane.AccessibleJEditorPaneHTML |
Этот класс предоставляет поддержку AccessibleHypertext, и используется в тех случаях, когда установленный в этом EditorKit JEditorPane является экземпляром HTMLEditorKit. |
protected class |
JEditorPane.JEditorPaneAccessibleHypertextSupport |
Что возвращает AccessibleJEditorPaneHTML.getAccessibleText. |
Вложенные классы/интерфейсы, объявленные в классе 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
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final String |
HONOR_DISPLAY_PROPERTIES |
Ключ для свойства клиента, указывающего, используются ли шрифт и цвет фона по умолчанию из компонента, если шрифт или цвет фона не указаны в стилизованном тексте. |
static final String |
W3C_LENGTH_UNITS |
Ключ для свойства клиента, указывающего, используются ли w3c-совместимые единицы измерения длины для отображения html. |
Поля, объявленные в классе 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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
JEditorPane() |
Создаёт новый JEditorPane. |
JEditorPane |
Создаёт JEditorPane на основе строки, содержащей описание URL. |
JEditorPane |
Создаёт JEditorPane, инициализированный заданным текстом. |
JEditorPane |
Создаёт JEditorPane на основе указанного URL для входных данных. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addHyperlinkListener |
Добавляет обработчик гиперссылок для уведомления о любых изменениях, например, при выборе и вводе ссылки. |
protected EditorKit |
createDefaultEditorKit() |
Создаёт стандартный набор инструментов редактора ( PlainEditorKit) при первом создании компонента. |
static EditorKit |
createEditorKitForContentType |
Создаёт обработчик для заданного типа из стандартной базы данных наборов инструментов редактора. |
void |
fireHyperlinkUpdate |
Уведомляет всех слушателей, которые зарегистрировали интерес к уведомлению об этом типе события. |
AccessibleContext |
getAccessibleContext() |
Получает AccessibleContext, связанный с этим JEditorPane. |
final String |
getContentType() |
Получает тип содержимого, с которым в данный момент работает этот редактор. |
EditorKit |
getEditorKit() |
Получает текущий установленный набор инструментов для обработки содержимого. |
static String |
getEditorKitClassNameForContentType |
Возвращает текущее зарегистрированное имя класса EditorKit для типа type. |
EditorKit |
getEditorKitForContentType |
Получает набор инструментов редактора для использования с заданным типом содержимого. |
HyperlinkListener[] |
getHyperlinkListeners() |
Возвращает массив всех HyperLinkListener добавленных в этот JEditorPane с помощью addHyperlinkListener(). |
URL |
getPage() |
Получает текущий отображаемый URL. |
Dimension |
getPreferredSize() |
Возвращает предпочтительный размер для JEditorPane. |
boolean |
getScrollableTracksViewportHeight() |
Возвращает true, если область просмотра всегда должна принудительно устанавливать высоту этого Scrollable в соответствии с высотой области просмотра. |
boolean |
getScrollableTracksViewportWidth() |
Возвращает true, если область просмотра всегда должна принудительно устанавливать ширину этого Scrollable в соответствии с шириной области просмотра. |
protected InputStream |
getStream |
Получает поток для заданного URL, который вскоре будет загружен методом setPage. |
String |
getText() |
Возвращает текст, содержащийся в этом TextComponent в терминах типа содержимого этого редактора. |
String |
getUIClassID() |
Получает идентификатор класса для пользовательского интерфейса. |
protected String |
paramString() |
Возвращает строковое представление этого JEditorPane. |
void |
read |
Этот метод инициализируется из потока. |
static void |
registerEditorKitForContentType |
Устанавливает стандартные привязки type к classname. |
static void |
registerEditorKitForContentType |
Устанавливает стандартные привязки type к classname. |
void |
removeHyperlinkListener |
Удаляет обработчик гиперссылок. |
void |
replaceSelection |
Заменяет текущее выделенное содержимое новым содержимым, представленным данной строкой. |
void |
scrollToReference |
Прокручивает представление до заданной ссылки (т.е. значения, возвращаемого методом URL.getRef для отображаемого URL). |
final void |
setContentType |
Устанавливает тип содержимого, обрабатываемого этим редактором. |
void |
setEditorKit |
Устанавливает текущий установленный набор инструментов для обработки содержимого. |
void |
setEditorKitForContentType |
Непосредственно устанавливает набор инструментов редактора для использования с заданным типом. |
void |
setPage |
Устанавливает текущий отображаемый URL. |
void |
setPage |
Устанавливает текущий отображаемый URL. |
void |
setText |
Устанавливает текст этого TextComponent на указанное содержимое, которое, как ожидается, находится в формате типа содержимого этого редактора. |
Методы, объявленные в классе 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, getPreferredScrollableViewportSize, getPrintable, getScrollableBlockIncrement, getScrollableUnitIncrement, getSelectedText, getSelectedTextColor, getSelectionColor, getSelectionEnd, getSelectionStart, getText, getToolTipText, getUI, isEditable, loadKeymap, modelToView, modelToView2D, moveCaretPosition, paste, print, print, print, read, removeCaretListener, removeKeymap, restoreComposedText, saveComposedText, select, selectAll, setCaret, setCaretColor, setCaretPosition, setDisabledTextColor, setDocument, setDragEnabled, setDropMode, setEditable, setFocusAccelerator, setHighlighter, setKeymap, setMargin, setNavigationFilter, setSelectedTextColor, setSelectionColor, setSelectionEnd, setSelectionStart, 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, 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
Подробное описание полей
W3C_LENGTH_UNITS
public static final String W3C_LENGTH_UNITS
По умолчанию это отключено; для включения установите свойство клиента property с этим именем в значение Boolean.TRUE.
- С момента:
- 1.5
- См. также:
HONOR_DISPLAY_PROPERTIES
public static final String HONOR_DISPLAY_PROPERTIES
Значение по умолчанию зависит от внешнего вида; для включения установите свойство клиента property с этим именем в значение Boolean.TRUE.
- С момента:
- 1.5
- См. также:
Подробное описание конструкторов
JEditorPane
public JEditorPane()
JEditorPane. Модель документа установлена в null.JEditorPane
public JEditorPane(URL initialPage) throws IOException
JEditorPane на основе указанного URL-адреса для ввода.- Параметры:
-
initialPage- URL-адрес - Исключения:
-
IOException- если URL-адресnullили к нему нет доступа
JEditorPane
public JEditorPane(String url) throws IOException
JEditorPane на основе строки, содержащей спецификацию URL.- Параметры:
-
url- URL-адрес - Исключения:
-
IOException- если URL-адресnullили к нему нет доступа
JEditorPane
public JEditorPane(String type, String text)
JEditorPane, инициализированный заданным текстом. Это удобный конструктор, вызывающий методы setContentType и setText.- Параметры:
-
type- тип MIME заданного текста -
text- текст для инициализации; может бытьnull - Исключения:
-
NullPointerException- если параметрtypenull
Подробное описание методов
addHyperlinkListener
public void addHyperlinkListener(HyperlinkListener listener)
- Параметры:
-
listener- обработчик
removeHyperlinkListener
public void removeHyperlinkListener(HyperlinkListener listener)
- Параметры:
-
listener- обработчик
getHyperlinkListeners
@BeanProperty(bound=false) public HyperlinkListener[] getHyperlinkListeners()
HyperLinkListener добавленных в этот JEditorPane с помощью addHyperlinkListener().- Возвращает:
- все добавленные
HyperLinkListenerили пустой массив, если обработчики не добавлены - С момента:
- 1.4
fireHyperlinkUpdate
public void fireHyperlinkUpdate(HyperlinkEvent e)
EditorKit если текущий тип содержимого поддерживает гиперссылки, и произошла активность со ссылкой. Список слушателей обрабатывается в обратном порядке.- Параметры:
-
e- событие - См. также:
setPage
@BeanProperty(expert=true, description="the URL used to set content") public void setPage(URL page) throws IOException
null, создаётся новый документ по умолчанию, и URL считывается в него. Если URL содержит ссылку на местоположение, к этому местоположению будет прокручен компонент с помощью вызова метода scrollToReference. Если желаемый URL — это текущий отображаемый URL, документ не будет перезагружен. Для принудительной перезагрузки документа необходимо очистить свойство описания потока документа. Следующий код демонстрирует это: Document doc = jEditorPane.getDocument(); doc.putProperty(Document.StreamDescriptionProperty, null);Если желаемый URL не отображается, вызывается метод
getStream, предоставляющий подклассам контроль над предоставленным потоком. Это может загружаться синхронно или асинхронно, в зависимости от документа, возвращённого методом EditorKit. Если Document является типа AbstractDocument и имеет значение, возвращаемое методом AbstractDocument.getAsynchronousLoadPriority, которое больше или равно нулю, страница будет загружена на отдельной нити с заданным приоритетом.
Если документ загружается синхронно, он заполняется потоком перед установкой в редактор с помощью вызова setDocument, который привязан и сгенерирует событие изменения свойства. Если возникнет исключение IOException, частично загруженный документ будет удалён, и ни событие изменения свойства документа, ни событие изменения свойства страницы не будут сгенерированы. Если документ загружен успешно и установлен, пользовательский интерфейс создаст представление для него, затем произведёт прокрутку, если необходимо, и сгенерирует событие изменения свойства страницы.
Если документ загружается асинхронно, документ устанавливается в редактор сразу с помощью вызова setDocument, который сгенерирует событие изменения свойства документа, а затем будет создана нить, которая начнёт фактическую загрузку. В этом случае событие изменения свойства страницы не будет сгенерировано вызовом данного метода напрямую, а будет сгенерировано, когда нить, выполняющая загрузку, завершит работу. Оно также сгенерируется в потоке обработки событий. Поскольку вызывающий поток не может генерировать исключение IOException в случае ошибки в другой нити, событие изменения свойства страницы сгенерируется, когда другая нить завершит свою работу, независимо от того, была ли загрузка успешной или нет.
- Параметры:
-
page- URL страницы - Исключения:
-
IOException- дляnullили недействительной спецификации страницы, или исключения при чтении из потока - См. также:
read
public void read(InputStream in, Object desc) throws IOException
HTMLEditorKit, а параметр desc — HTMLDocument, тогда вызывается HTMLEditorKit для запуска чтения. В противном случае вызывается метод суперкласса, который загружает модель как обычный текст.- Параметры:
-
in- поток для чтения -
desc- объект, описывающий поток - Исключения:
-
IOException- как выброшенное при использовании потока для инициализации - См. также:
getStream
protected InputStream getStream(URL page) throws IOException
setPage. По умолчанию просто открывает URL и возвращает поток. Это можно переопределить для полезных действий, таких как получение потока из кэша, отслеживание прогресса потока и т. д. Ожидается, что этот метод будет иметь побочный эффект установления типа содержимого и, следовательно, установки соответствующего EditorKit для загрузки потока.
Если поток — это соединение HTTP, перенаправления будут выполнены, и результирующий URL будет установлен как Document.StreamDescriptionProperty, чтобы относительные URL-адреса могли быть корректно разрешены.
- Параметры:
-
page- URL страницы - Возвращает:
- поток для URL, который должен быть загружен
- Исключения:
-
IOException- если произошла проблема ввода-вывода
scrollToReference
public void scrollToReference(String reference)
URL.getRef для отображаемого URL). По умолчанию этот метод знает, как найти ссылку в HTMLDocument. Реализация вызывает метод scrollRectToVisible для выполнения фактической прокрутки. Если прокрутка к месту ссылки необходима для типов документов, отличных от HTML, этот метод должен быть переопределён. Этот метод не окажет никакого влияния, если компонент не виден.- Параметры:
-
reference- имя местоположения для прокрутки
getPage
public URL getPage()
null, и относительные URL-адреса не будут разрешены.- Возвращает:
- URL-адрес или
nullесли он отсутствует
УстановитьСтраницу
public void setPage(String url) throws IOException
- Параметры:
-
url- URL для отображения - Исключения:
-
IOException- дляnullили некорректной спецификации URL
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
- Переопределяет:
-
getUIClassIDв классеJComponent - Возвращает:
- строку "EditorPaneUI"
- См. также:
создатьПочтовыйНабор
protected EditorKit createDefaultEditorKit()
PlainEditorKit) при первом создании компонента.- Возвращает:
- редакторский набор
получитьРедакторскийНабор
public EditorKit getEditorKit()
createDefaultEditorKit вызывается для настройки значения по умолчанию при необходимости.- Возвращает:
- редакторский набор
получитьТипСодержимого
public final String getContentType()
EditorKit. - Возвращает:
- тип содержимого,
nullесли редакторский набор не установлен
установитьТипСодержимого
@BeanProperty(bound=false, description="the type of content") public final void setContentType(String type)
getEditorKitForContentType, а затем setEditorKit, если редакторский набор можно успешно найти. Это в основном удобный метод, который можно использовать как альтернативу прямому вызову setEditorKit. Если в спецификации типа содержимого указано определение кодировки символов, оно будет использоваться при загрузке входных потоков с использованием соответствующего EditorKit. Например, если тип задан как text/html; charset=EUC-JP, содержимое будет загружено с использованием EditorKit, зарегистрированного для text/html, и ввода-вывода, предоставляемого EditorKit, для загрузки Юникода в документ, будет использоваться кодировка EUC-JP для преобразования в Юникод. Если тип не распознан, содержимое будет загружено с использованием EditorKit, зарегистрированного для обычного текста, text/plain.
- Параметры:
-
type- тип MIME содержимого безnull, поддерживаемый редактированием - Исключения:
-
NullPointerException- если параметрtypenull - См. также:
установитьРедакторскийНабор
@BeanProperty(expert=true, description="the currently installed kit for handling content") public void setEditorKit(EditorKit kit)
null, новый набор устанавливается, и для него создаётся документ по умолчанию. Событие PropertyChange ("editorKit") всегда срабатывает при вызове setEditorKit. ПРИМЕЧАНИЕ: это имеет побочный эффект изменения модели, так как EditorKit является источником моделирования конкретного типа содержимого. Этот метод вызовет setDocument от имени вызывающего метода для обеспечения целостности внутреннего состояния.
- Параметры:
-
kit- желаемое поведение редактора - См. также:
получитьРедакторскийНаборДляТипСодержимого
public EditorKit getEditorKitForContentType(String type)
EditorKit, зарегистрированного для данного типа, он попытается создать EditorKit из стандартной EditorKit регистрации. Если это не удастся, будет использоваться PlainEditorKit, исходя из предположения, что все текстовые документы могут быть представлены как простой текст. Этот метод можно переопределить, чтобы использовать другой тип реестра. Например, его можно переопределить для использования Java Activation Framework.
- Параметры:
-
type- тип содержимого безnull - Возвращает:
- редакторский набор
установитьРедакторскийНаборДляТипСодержимого
public void setEditorKitForContentType(String type, EditorKit k)
createEditorKitForContentType для установки обработчиков для типов содержимого с предпочтениями пользовательского интерфейса.- Параметры:
-
type- тип содержимого безnull -
k- редакторский набор для установки
заменитьВыбор
public void replaceSelection(String content)
null), это эквивалентно удалению текущего выбора. Текст замены будет иметь атрибуты, которые в данный момент определены для ввода. Если компонент не редактируется, выдаётся звуковой сигнал и метод возвращает значение.- Переопределяет:
-
replaceSelectionв классеJTextComponent - Параметры:
-
content- содержимое для замены выбора. Это значение может бытьnull
создатьРедакторскийНаборДляТипСодержимого
public static EditorKit createEditorKitForContentType(String type)
ClassLoader, будет использован этот ClassLoader. Если зарегистрированный ClassLoader отсутствует, будет использован Class.forName. После успешной загрузки экземпляра прототипа EditorKit, он клонируется, и клон возвращается.
- Параметры:
-
type- тип содержимого - Возвращает:
- редакторский набор или
null, если для данного типа ничего не зарегистрировано
зарегистрироватьРедакторскийНаборДляТипСодержимого
public static void registerEditorKitForContentType(String type, String classname)
type с classname. Класс будет динамически загружен позже, когда это потребуется, и его можно безопасно изменить до предполагаемого использования, чтобы избежать загрузки нежелательных классов. Прототип EditorKit загрузится с помощью Class.forName при регистрации этим методом.- Параметры:
-
type- тип содержимого безnull -
classname- класс, который загрузится позже
зарегистрироватьРедакторскийНаборДляТипСодержимого
public static void registerEditorKitForContentType(String type, String classname, ClassLoader loader)
type с classname. Класс будет динамически загружен позже, когда это потребуется, с помощью указанного ClassLoader, и его можно безопасно изменить до предполагаемого использования, чтобы избежать загрузки нежелательных классов.- Параметры:
-
type- тип содержимого безnull -
classname- класс, который загрузится позже -
loader-ClassLoaderдля загрузки имени
получитьИмяКлассРедакторскийНаборДляТипСодержимого
public static String getEditorKitClassNameForContentType(String type)
EditorKit для типа type.- Параметры:
-
type- тип содержимого безnull - Возвращает:
- строку, содержащую имя класса
EditorKitдляtype - С:
- 1.3
получитьПредпочтительныйРазмер
public Dimension getPreferredSize()
JEditorPane. Предпочтительный размер для JEditorPane немного отличается от предпочтительного размера суперкласса. Если размер области просмотра стал меньше минимального размера компонента, значение scrollable для отслеживания ширины или высоты станет ложным. Стандартная компоновка области просмотра вернёт предпочтительный размер, что нежелательно в случае, когда scrollable отслеживает. В этом случае стандартный предпочтительный размер корректируется до минимального размера. Это позволяет таким элементам, как HTML-таблицы, уменьшаться до минимального размера, а затем располагаться в минимальном размере, отказываясь от дальнейшего уменьшения.- Переопределяет:
-
getPreferredSizeв классеJComponent - Возвращает:
- строку, содержащую предпочтительный размер
- См. также:
setText
@BeanProperty(bound=false, description="the text of this component") public void setText(String t)
TextComponent заданным содержимым, которое ожидается в формате типа содержимого этого редактора. Например, если тип задан как text/html, строка должна быть указана в терминах HTML. Это реализовано для удаления содержимого текущего документа и его замены путем разбора заданной строки с использованием текущего EditorKit. Это обеспечивает семантику суперкласса, не изменяя модель, но поддерживает тип содержимого, текущий на этом компоненте. Предполагается, что предыдущее содержимое относительно небольшое, и что предыдущее содержимое не имеет побочных эффектов. Оба эти предположения могут быть нарушены и привести к нежелательным результатам. Чтобы избежать этого, создайте новый документ, getEditorKit().createDefaultDocument(), и замените существующий Document новым. Таким образом, вы уверены, что предыдущее Document не будет иметь каких-либо остаточных состояний.
- Оставление существующей модели на месте означает, что старое представление будет разрушено, а новое создано, при этом замена документа позволит избежать разрушения старого представления.
- Некоторые форматы (такие как HTML) могут устанавливать вещи в документ, которые могут влиять на будущее содержимое. HTML может содержать встроенную информацию о стиле, которая будет неожиданно влиять на следующее устанавливаемое содержимое.
Альтернативный способ загрузки этого компонента с помощью строки — создание StringReader и вызов метода read. В этом случае модель будет заменена после ее инициализации содержимым строки.
- Overrides:
-
setTextв классеJTextComponent - Parameters:
-
t- новый текст для установки; еслиnullстарый текст будет удален - See Also:
getText
public String getText()
TextComponent в терминах типа содержимого этого редактора. Если при попытке извлечь текст возникает исключение, возвращается null. Это реализовано для вызова JTextComponent.write с StringWriter. - Overrides:
-
getTextв классеJTextComponent - Returns:
- текст
- See Also:
getScrollableTracksViewportWidth
@BeanProperty(bound=false) public boolean getScrollableTracksViewportWidth()
Scrollable в соответствии с шириной области просмотра.- Specified by:
-
getScrollableTracksViewportWidthв интерфейсеScrollable - Overrides:
-
getScrollableTracksViewportWidthв классеJTextComponent - Returns:
- true, если область просмотра должна принудительно установить ширину Scrollables в соответствии со своей собственной шириной, в противном случае false
getScrollableTracksViewportHeight
@BeanProperty(bound=false) public boolean getScrollableTracksViewportHeight()
Scrollable в соответствии с высотой области просмотра.- Specified by:
-
getScrollableTracksViewportHeightв интерфейсеScrollable - Overrides:
-
getScrollableTracksViewportHeightв классеJTextComponent - Returns:
- true, если область просмотра должна принудительно установить высоту
Scrollableв соответствии со своей собственной высотой, в противном случае false
paramString
protected String paramString()
JEditorPane. Этот метод предназначен только для отладки, и содержимое и формат возвращаемой строки могут отличаться в различных реализациях. Возвращаемая строка может быть пустой, но не может быть null. - Overrides:
-
paramStringв классеJTextComponent - Returns:
- строковое представление этого
JEditorPane
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
- Specified by:
-
getAccessibleContextв интерфейсеAccessible - Overrides:
-
getAccessibleContextв классеJTextComponent - Returns:
- AccessibleJEditorPane, который служит AccessibleContext этого JEditorPane
© 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/JEditorPane.html