Java. Аплеты. Урок 14. Метод update().
Полные версии уроков (с картинками) можно найти по адресам:
Урок 14. Метод update().
Ян Ф. Дарвин. Java. Сборник рецептов для профессионалов.
Заказать на Озоне
Подробнее
Уроки по программированию на C++ Builder. Библиотека VCL, создание собственных компонентов, работа с базами данных, примеры, FAQ. Уроки разбиты на серии. Каждая серия независима от других.
Java. Апплеты. Урок 14. Метод update()
Часто при перерисовке апплета надо отрисовывать заново не весь апплет, а только его часть. Например, у вас в апплете может быть неподвижный фон, по которому что-то там движеться. Для перерисовки в этом случае не надо перерисовывать весь фон, а только ту его часть, на которой находился и находится движущийся объект. При таким способе перерисовки мы избавимся и от неприятного мерцания нашего апплета.
Для такой частичной перерисовки мы использем не метод paint (который перерисовывает все), а метод update, который позволяет задать для перерисовки только часть апплета.
Вот пример, иллюстрирующий это:
public void update(Graphics g){
// Задаем прямоугольник для перерисовки.
g.clipRect(0, 0, 50, 50);
// Вызываем перерисовку.
paint(g);
}
Здесь мы задаем прямоугольник для перерисовки с помощью метода clipRect класса Graphics. Параметры у него такие - x и y начальной точки и ширина с высотой. После задания прямоугольника для перерисовки мы вызываем метод paint, в который в качестве параметра передаем тот же самый g, для которого мы только что вызвали метод clipRect. Разумеется метод paint должен быть тоже определен в нашем апплете (например, такой, как в уроке 8).