Класс 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- компонент -- не используется в реализации по умолчанию, но может быть использован переопределённой версией для возвращения другого 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 в список Components, которые нужно перерисовать.- Параметры:
-
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 в список Components, которые нужно перерисовать.- Параметры:
-
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
public String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этого объекта
getOffscreenBuffer
public Image getOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c. По умолчанию существует двойной буфер на каждый RepaintManager. Буфер может быть меньше, чем (proposedWidth,proposedHeight). Это происходит, когда максимальный размер двойного буфера был установлен для получающего менеджера перерисовки.- Параметры:
-
c- компонент -
proposedWidth- ширина буфера -
proposedHeight- высота буфера - Возвращает:
- изображение
getVolatileOffscreenBuffer
public Image getVolatileOffscreenBuffer(Component c, int proposedWidth, int proposedHeight)
c. Возвращаемое изображение будет экземпляром VolatileImage, или null, если объект VolatileImage не удалось создать. Этот буфер может быть меньше, чем (proposedWidth,proposedHeight). Это происходит, когда максимальный размер двойного буфера был установлен для этого менеджера перерисовки.- Параметры:
-
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, 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/RepaintManager.html