|
|
 | hvor'n virker invalidate() ? Fra : Janus |
Dato : 24-01-06 18:06 |
|
I mit lille program kan brugeren gennem nogle JComboBox'es ændre på
udseendet af en graf. Jeg vil så gerne ha' at grafen bliver opdateret i
samme sekund, som brugeren vælger et eller andet i en af disse option
lister. Brugeren kan også vælge noget udseendeændrende (farve) via tryk
på en JButton.
Ændringer bliver registereret fint nok, de gemmes i det respektive
graf-element, som selve graf-JPanel'et har reference til.
Min listener fungerer fint nok på mine JComboBox'es, men grafen bliver
ikke opdateret med det samme, når jeg vælger noget i min JComboBox'es.
På farve-knappen sker det med det samme, men det er nok pga den Pop-Up,
der kommer, når man trykker derpå.
I den listener tilføjet mine JComboBox'es kaldes invalidate() på
graf-Panelet, men det funker ikke, grafen bliver ikke gentegnet, før jeg
bevæger musen en anelse. Tegneprocessen i graf-panelet sker i public
void paintComponent(Graphics g).
Hvordan tvinger jeg graf-panelets paintComponent til at blive kaldt?
Med venlig hilsen Janus
| |
Niels Dybdahl (31-01-2006)
 | Kommentar Fra : Niels Dybdahl |
Dato : 31-01-06 09:26 |
|
> I den listener tilføjet mine JComboBox'es kaldes invalidate() på
> graf-Panelet, men det funker ikke, grafen bliver ikke gentegnet, før jeg
> bevæger musen en anelse. Tegneprocessen i graf-panelet sker i public
> void paintComponent(Graphics g).
>
> Hvordan tvinger jeg graf-panelets paintComponent til at blive kaldt?
Jeg plejer at bruge repaint().
Niels Dybdahl
| |
|
|