Класс RepaintManager
public class RepaintManager extends Object
Начиная с версии 1.6 RepaintManager обрабатывает запросы на перерисовку верхнеуровневых компонентов Swing (JWindow, JFrame и JDialog). Любые вызовы repaint для одного из этих компонентов приведут к вызову соответствующего метода addDirtyRegion.
- Начиная с:
- 1.2
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
RepaintManager() |
Создает новый экземпляр RepaintManager. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addDirtyRegion |
Добавляет window в список Component, которые необходимо перерисовать. |
void |
addDirtyRegion |
Добавляет компонент в список компонентов, которые необходимо обновить. |
void |
addInvalidComponent |
Помечает компонент как нуждающийся в компоновке и помещает в очередь задачу для потока диспетчеризации событий, которая проверит первый предок компонента, для которого isValidateRoot() возвращает true. |
static RepaintManager |
currentManager |
Возвращает RepaintManager для заданного Component. |
static RepaintManager |
currentManager |
Возвращает RepaintManager для вызывающего потока, которому передан JComponent. |
Rectangle |
getDirtyRegion |
Возвращает текущую область перерисовки компонента. |
Dimension |
getDoubleBufferMaximumSize() |
Возвращает максимальный размер двойного буфера. |
Image |
getOffscreenBuffer |
Возвращает буфер вне экрана, который следует использовать как двойной буфер для компонента c. |
Image |
getVolatileOffscreenBuffer |
Возвращает волатильный буфер вне экрана, который следует использовать как двойной буфер для указанного компонента c. |
boolean |
isCompletelyDirty |
Вспомогательный метод, возвращающий true, если aComponent будет полностью отрисован во время следующего вызова paintDirtyRegions(). |
boolean |
isDoubleBufferingEnabled() |
Возвращает true, если для этого RepaintManager используется двойная буферизация. |
void |
markCompletelyClean |
Помечает компонент как полностью чистый. |
void |
markCompletelyDirty |
Помечает компонент как полностью требующий перерисовки. |
void |
paintDirtyRegions() |
Отрисовывает все компоненты, помеченные как требующие перерисовки. |
void |
removeInvalidComponent |
Удаляет компонент из списка недействительных компонентов. |
static void |
setCurrentManager |
Задает RepaintManager. |
void |
setDoubleBufferingEnabled |
Включает или отключает двойную буферизацию в этом RepaintManager. |
void |
setDoubleBufferMaximumSize |
Задает максимальный размер двойного буфера. |
String |
toString() |
Возвращает строку, отображающую и описывающую свойства этого объекта. |
void |
validateInvalidComponents() |
Проверяет все компоненты, помеченные как недействительные. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Показывает, равен ли этот объект какому-либо другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ждать, пока он не будет разбужен, обычно посредством уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ждать, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечет заданное время. |
final void |
wait |
Заставляет текущий поток ждать, пока он не будет разбужен, обычно посредством уведомления или прерывания, либо пока не истечет заданное время. |
Подробное описание конструкторов
RepaintManager
public RepaintManager()
Подробное описание методов
currentManager
public static RepaintManager currentManager(Component c)
- Параметры:
-
c— компонент Component; в реализации по умолчанию не используется, но переопределенная версия может использовать его для возврата разных экземпляров RepaintManager в зависимости от компонента - Возвращает:
- объект RepaintManager
currentManager
public static RepaintManager currentManager(JComponent c)
Примечание. Этот метод существует для обеспечения обратной бинарной совместимости с предыдущими версиями библиотеки Swing. Он просто возвращает результат, возвращаемый методом currentManager(Component).
- Параметры:
-
c— компонент JComponent; не используется - Возвращает:
- объект RepaintManager
setCurrentManager
public static void setCurrentManager(RepaintManager aRepaintManager)
- Параметры:
-
aRepaintManager— используемый объект RepaintManager
addInvalidComponent
public void addInvalidComponent(JComponent invalidComponent)
- Параметры:
-
invalidComponent— компонент - См. также:
removeInvalidComponent
public void removeInvalidComponent(JComponent component)
- Параметры:
-
component— компонент - См. также:
addDirtyRegion
public void addDirtyRegion(JComponent c, int x, int y, int w, int h)
- Параметры:
-
c— компонент для перерисовки; если он равен null, ничего не происходит. -
x— координата X области для перерисовки -
y— координата Y области для перерисовки -
w— ширина области для перерисовки -
h— высота области для перерисовки - См. также:
addDirtyRegion
public void addDirtyRegion(Window window, int x, int y, int w, int h)
window в список Component, которые необходимо перерисовать.- Параметры:
-
window— окно для перерисовки; если оно равно null, ничего не происходит. -
x— координата X области для перерисовки -
y— координата Y области для перерисовки -
w— ширина области для перерисовки -
h— высота области для перерисовки - Начиная с:
- 1.6
- См. также:
getDirtyRegion
public Rectangle getDirtyRegion(JComponent aComponent)
- Параметры:
-
aComponent— компонент - Возвращает:
- область
markCompletelyDirty
public void markCompletelyDirty(JComponent aComponent)
- Параметры:
-
aComponent— компонент
markCompletelyClean
public void markCompletelyClean(JComponent aComponent)
- Параметры:
-
aComponent— компонент
isCompletelyDirty
public boolean isCompletelyDirty(JComponent aComponent)
- Параметры:
-
aComponent— компонент - Возвращает:
-
true, если aComponent будет полностью отрисован во время следующего вызова paintDirtyRegions().
validateInvalidComponents
public void validateInvalidComponents()
- См. также:
paintDirtyRegions
public void paintDirtyRegions()
- См. также:
toString
getOffscreenBuffer
public Image getOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c. По умолчанию для каждого RepaintManager предусмотрен один двойной буфер. Размер буфера может быть меньше, чем (proposedWidth,proposedHeight). Это происходит, когда для получающего RepaintManager задан максимальный размер двойного буфера.- Параметры:
-
c— компонент -
proposedWidth— ширина буфера -
proposedHeight— высота буфера - Возвращает:
- изображение
getVolatileOffscreenBuffer
public Image getVolatileOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c. Возвращенное изображение будет экземпляром VolatileImage либо значением null, если создать объект VolatileImage не удалось. Размер этого буфера может быть меньше, чем (proposedWidth,proposedHeight). Это происходит, когда для данного RepaintManager задан максимальный размер двойного буфера.- Параметры:
-
c— компонент -
proposedWidth— ширина буфера -
proposedHeight— высота буфера - Возвращает:
- волатильное изображение
- Начиная с:
- 1.4
- См. также:
setDoubleBufferMaximumSize
public void setDoubleBufferMaximumSize(Dimension d)
- Параметры:
-
d— размер
getDoubleBufferMaximumSize
public Dimension getDoubleBufferMaximumSize()
- Возвращает:
- объект Dimension, представляющий максимальный размер
setDoubleBufferingEnabled
public void setDoubleBufferingEnabled(boolean aFlag)
- Параметры:
-
aFlag— true, чтобы включить двойную буферизацию - См. также:
isDoubleBufferingEnabled
public boolean isDoubleBufferingEnabled()
false, чтобы избежать ненужной буферизации в Swing. На платформах, где аппаратная двойная буферизация не поддерживается, значением по умолчанию будет true.- Возвращает:
- true, если для этого объекта используется двойная буферизация
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.