Viktor Sehr
Viktor Sehr

Reputation: 13099

Prevent Java from repainting the content of a JPanel while updating

I have a JPanel which contains a lot of child components. While updating\adding new components to the parent JPanel I'd like to prevent it from repainting, how can this achieved?

Upvotes: 2

Views: 11722

Answers (3)

guai
guai

Reputation: 805

setVisible(false)  

update

setVisible(true)

Upvotes: 3

Denis Tulskiy
Denis Tulskiy

Reputation: 19177

Try RepaintManager.currentManager(component).markCompletelyClean(component). It will prevent the component from repainting. You might need to do this after each time you add new components.

Upvotes: 8

Jack
Jack

Reputation: 133577

you could try by using setIgnoreRepaint(boolean value) but it's a typical swing feature that can or cannot work (mainly because it depends from AWT so you never know).

Otherwise you could override the paint method by using a flag that simply makes the methor return without calling super.paint(). (actually overriding paintComponent should be the right choice)

Upvotes: 1

Related Questions