Класс DefaultHighlighter
- java.lang.Object
-
- javax.swing.text.LayeredHighlighter
-
- javax.swing.text.DefaultHighlighter
- Все реализованные интерфейсы:
Highlighter
- Прямые известные подклассы:
BasicTextUI.BasicHighlighter
public class DefaultHighlighter extends LayeredHighlighter
Реализует интерфейсы Highlighter. Реализует простой механизм выделения, который отображает выделение твёрдым цветом.
- См. также:
Highlighter
Вложенные классы
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class | DefaultHighlighter.DefaultHighlightPainter | Простой механизм рисования выделения, который заполняет выделенную область твёрдым цветом. |
Вложенные классы/интерфейсы, объявленные в классе javax.swing.text.LayeredHighlighter
LayeredHighlighter.LayerPainter Вложенные классы/интерфейсы, объявленные в интерфейсе javax.swing.text.Highlighter
Highlighter.Highlight, Highlighter.HighlightPainter Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static LayeredHighlighter.LayerPainter | DefaultPainter | Базовая реализация LayeredHighlighter.LayerPainter, которая может использоваться для рисования выделений. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DefaultHighlighter() | Создаёт новый объект DefaultHighlighther. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Object | addHighlight(int p0,
int p1,
Highlighter.HighlightPainter p) | Добавляет выделение в представление. |
void | changeHighlight(Object tag,
int p0,
int p1) | Изменяет выделение. |
void | deinstall(JTextComponent c) | Вызывается при удалении пользовательского интерфейса из интерфейса JTextComponent. |
boolean | getDrawsLayeredHighlights() | Возвращает выделения, нарисованные слоями. |
Highlighter.Highlight[] | getHighlights() | Создаёт копию выделений. |
void | install(JTextComponent c) | Вызывается при установке пользовательского интерфейса в интерфейс JTextComponent. |
void | paint(Graphics g) | Отображает выделения. |
void | paintLayeredHighlights(Graphics g,
int p0,
int p1,
Shape viewBounds,
JTextComponent editor,
View view) | При отрисовке листовых представлений (таких как LabelView) они должны вызывать этот метод. |
void | removeAllHighlights() | Удаляет все выделения. |
void | removeHighlight(Object tag) | Удаляет выделение из представления. |
void | setDrawsLayeredHighlights(boolean newValue) | Если true, выделения рисуются при отрисовке текста в представлениях. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Поля
DefaultPainter
public static final LayeredHighlighter.LayerPainter DefaultPainter
Стандартная реализация LayeredHighlighter.LayerPainter, которую можно использовать для рисования выделений.
Начиная с версии 1.4, это поле является final.
Конструкторы
DefaultHighlighter
public DefaultHighlighter()
Создаёт новый объект DefaultHighlighther.
Методы
paint
public void paint(Graphics g)
Отображает выделения.
- Параметры:
-
g- контекст графики
install
public void install(JTextComponent c)
Вызывается при установке пользовательского интерфейса в интерфейс JTextComponent. Устанавливает редактор и удаляет все существующие выделения.
- Параметры:
-
c- компонент редактора - См. также:
Highlighter.install(javax.swing.text.JTextComponent)
deinstall
public void deinstall(JTextComponent c)
Вызывается при удалении пользовательского интерфейса из интерфейса JTextComponent.
- Параметры:
-
c- компонент - См. также:
Highlighter.deinstall(javax.swing.text.JTextComponent)
addHighlight
public Object addHighlight(int p0,
int p1,
Highlighter.HighlightPainter p)
throws BadLocationException Добавляет выделение в представление. Возвращает метку, которую можно использовать для ссылки на выделение.
- Параметры:
-
p0- начальный смещение диапазона, который нужно выделить >= 0 -
p1- конечное смещение диапазона, который нужно выделить >= p0 -
p- используется рисовальщик для фактического отображения выделения - Возвращает:
- объект, который можно использовать как метку для ссылки на выделение
- Исключения:
-
BadLocationException- если указанное расположение недействительно
removeHighlight
public void removeHighlight(Object tag)
Удаляет выделение из представления.
- Параметры:
-
tag- ссылка на выделение
removeAllHighlights
public void removeAllHighlights()
Удаляет все выделения.
changeHighlight
public void changeHighlight(Object tag,
int p0,
int p1)
throws BadLocationException Изменяет выделение.
- Параметры:
-
tag- метка выделения -
p0- начало диапазона >= 0 -
p1- конец диапазона >= p0 - Исключения:
-
BadLocationException- если указанное расположение недействительно
getHighlights
public Highlighter.Highlight[] getHighlights()
Создаёт копию выделений. Фактически не клонирует каждое выделение, а только создаёт ссылки на них.
- Возвращает:
- копию
- См. также:
Highlighter.getHighlights()
paintLayeredHighlights
public void paintLayeredHighlights(Graphics g,
int p0,
int p1,
Shape viewBounds,
JTextComponent editor,
View view) При отрисовке листых представлений (например, LabelView) необходимо вызвать этот метод. Если выделение находится в заданном регионе, оно будет нарисовано немедленно.
- Задано:
-
paintLayeredHighlightsв классеLayeredHighlighter - Параметры:
-
g- используется графика для рисования -
p0- начальное смещение представления -
p1- конечное смещение представления -
viewBounds- Границы представления -
editor- JTextComponent -
view- экземпляр представления, который отрисовывается
setDrawsLayeredHighlights
public void setDrawsLayeredHighlights(boolean newValue)
Если true, выделения рисуются при отрисовке текста. То есть представления вызовут paintLayeredHighlight, что приведёт к отрисовке прямоугольника перед отрисовкой текста (если смещения находятся в выделенной области).
- Параметры:
-
newValue- новое значение
getDrawsLayeredHighlights
public boolean getDrawsLayeredHighlights()
Возвращает рисовать лированные выделения.
- Возвращает:
- рисовать лированные выделения
© 1993, 2020, 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/11/docs/api/java.desktop/javax/swing/text/DefaultHighlighter.html