http://java.sun.com/products/jfc/tsc/articles/painting/
1) Покраска в AWT
Чтобы понять, как работает API рисования AWT, нужно знать, что
запускает операцию рисования в оконной среде. В AWT есть
два вида операций покраски: системная покраска и
прикладной живописи.
2) Системно-ориентированная окраска
В операции рисования, запускаемой системой, система запрашивает
компонент для отображения его содержимого, обычно для одного из следующих
Причины:
Компонент впервые отображается на экране.
Размер компонента изменен.
Компонент имеет повреждения, которые необходимо отремонтировать. (Например, то, что ранее скрывало компонент, переместилось, и
ранее закрытая часть компонента стала открытой).
3) Живопись, запускаемая приложением
В операции рисования, запускаемой приложением, компонент решает
ему нужно обновить его содержимое, потому что его внутреннее состояние
изменилось. (Например, кнопка обнаруживает, что кнопка мыши была
нажата и определяет, что нужно нарисовать «нажатую» кнопку
визуальный).
4) Метод рисования
Независимо от того, как запускается запрос на рисование, AWT использует
«Обратный» механизм для рисования, и этот механизм одинаков для
как тяжелые, так и легкие компоненты. Это означает, что программа
должен разместить код рендеринга компонента внутри определенного
переопределенный метод, и инструментарий вызовет этот метод, когда он
время рисовать.