Класс RepaintManager
public class RepaintManager extends Object
Начиная с версии 1.6 RepaintManager обрабатывает запросы на перерисовку для основных компонентов Swing (JApplet, JWindow, JFrame и JDialog). Любые вызовы repaint для одного из них вызовут соответствующий метод addDirtyRegion.
- Since:
- 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- компонент -- не используется в стандартной реализации, но может использоваться переопределённой версией для возвращения другого 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- Высота области для перерисовки - Since:
- 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- Высота области для перерисовки - Since:
- 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
public String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этого объекта
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- высота буфера - Возвращает:
- временное изображение
- Since:
- 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, 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/RepaintManager.html