Java перерисовка не работает правильно - PullRequest
5 голосов
/ 11 июня 2009

Я использую метод перерисовки java, он перерисовывается, но обновление видно только когда я нажимаю на холст или изменяю размер панели. Как я могу это исправить ? Что вызывает это?

Ответы [ 3 ]

15 голосов
/ 11 июня 2009

Вам необходимо вызвать метод revalidate (). Это заставляет менеджер макета обновлять / перекрашивать все его компоненты.

2 голосов
/ 11 июня 2009

repaint () на самом деле не перерисовывает, а просто запрашивает перекрашивание компонента.

0 голосов
/ 08 января 2012

Может быть полезно просто извлечь объект Graphics из компонента, который вы хотите нарисовать. Затем просто вызовите метод рисования для объекта Graphics. Например:

g = component.getGraphics(); 
draw(g);
...