"John B. Matthews" <nospam@nospam.invalid> wrote in message
news:nospam-864E1F.08265115062009@mara100-84.onlink.net...
In article
<4a35f0fa$0$32364$5a62ac22@per-qv1-newsreader-01.iinet.net.au>,
"Jarrick Chagma" <jarrick@large.com> wrote:
I have a large number of text fields in a number of JPanel panels
visible on
the screen at the same time and I would like to somehow coordinate their
updating. A button click can trigger an event which updates every
one of
the text fields at the same time but there is a noticeable effect of one
field updating after the next one (and not necessarily in any particular
order) which is visually unattractive and undesirable. I would
prefer that
the screen as a whole does not update until all the text field's
contents
have changed. I can't do double-buffering in this scenario as the
fields
are in different panels.
Perhaps you can arrange for your model to accumulate its results then
notify your view to update the display, _en_bloc_. The Observer pattern
works well in this case:
<http://en.wikipedia.org/wiki/Observer_pattern>
That's precisely what I am doing but no matter how much you do something
_en_bloc_ there still has to be a sequence of views that are updated and
it is this one-after-the-other sequence that causes the visual problem.
I try to put as little delay between each sequential update as possible
but even when they are on the next line of code there is still a small
(but perceptible) delay between each update because they are in separate
panels. When there are many views on the screen this doesn't look too nice.
Is there a way to somehow coordinate these updates perhaps by turning
off
screen redraw until all fields in all panels have updated?
I don't know of such a way.
Yes, I figured as much but maybe someone can suggest a way?
text fields and then clear the glass pane.