Класс RepaintManager
public class RepaintManager extends Object
Начиная с версии 1.6 RepaintManager обрабатывает запросы на перерисовку для верхнего уровня компонентов Swing (JApplet, JWindow, JFrame и JDialog). Любые вызовы repaint для одного из этих элементов вызовут соответствующий метод addDirtyRegion.
- С момента:
- 1.2
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
RepaintManager() |
Создает новый экземпляр RepaintManager. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
addDirtyRegion |
Устарело, для удаления: Этот элемент API может быть удален в будущей версии. API апплетов устарело. |
void |
addDirtyRegion |
Добавляет window в список Component, которые нужно перерисовать. |
void |
addDirtyRegion |
Добавляет компонент в список компонентов, которые должны быть обновлены. |
void |
addInvalidComponent |
Помечает компонент как требующий макета и помещает в очередь исполняемый блок для потока обработки событий, который сначала проверит родительский компонент, удовлетворяющий isValidateRoot(). |
static RepaintManager |
currentManager |
Возвращает RepaintManager для вызывающего потока, заданного компонентом. |
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() |
Проверяет все компоненты, помеченные как невалидные. |
Подробное описание конструкторов
RepaintManager
public RepaintManager()
Подробное описание методов
currentManager
public static RepaintManager currentManager(Component c)
- Параметры:
-
c- a Component -- не используется в реализации по умолчанию, но может использоваться переопределённой версией для возврата другого RepaintManager, в зависимости от компонента - Возвращает:
- объект RepaintManager
currentManager
public static RepaintManager currentManager(JComponent c)
Примечание: этот метод существует для обеспечения обратной двоичной совместимости с более ранними версиями библиотеки Swing. Он просто возвращает результат, возвращаемый currentManager(Component).
- Параметры:
-
c- a 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
- См. также:
addDirtyRegion
@Deprecated(since="9", forRemoval=true) public void addDirtyRegion(Applet applet, int x, int y, int w, int h)
applet в список Component, которые нужно перерисовать.- Параметры:
-
applet- апплет для перерисовки, 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). Это происходит, когда максимальный размер двойного буфера был установлен для получающего repaint manager.- Параметры:
-
c- компонент -
proposedWidth- ширина буфера -
proposedHeight- высота буфера - Возвращает:
- изображение
getVolatileOffscreenBuffer
public Image getVolatileOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c. Возвращаемое изображение будет экземпляром VolatileImage, или null, если объект VolatileImage не может быть создан. Этот буфер может быть меньше, чем (proposedWidth,proposedHeight). Это происходит, когда максимальный размер двойного буфера был установлен для этого repaint manager.- Параметры:
-
c- компонент -
proposedWidth- ширина буфера -
proposedHeight- высота буфера - Возвращает:
- временное изображение
- С:
- 1.4
- См. также:
Установить максимальный размер буфера двойного буферизации
public void setDoubleBufferMaximumSize(Dimension d)
- Параметры:
-
d- размер
Получить максимальный размер буфера двойного буферизации
public Dimension getDoubleBufferMaximumSize()
- Возвращает:
- объект Dimension, представляющий максимальный размер
Включить/выключить двойное буферизацию
public void setDoubleBufferingEnabled(boolean aFlag)
- Параметры:
-
aFlag- true для активации двойного буферизации - См. также:
Проверить включение двойного буферизации
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.
https://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/swing/RepaintManager.html