Hi!
Also hab folgendes Problem:
Das Projekt an dem ich gerade arbeite hat ein Framework dessen Hauptbestandteil
ein Modul ist, in dem diverse grafische Inhalt dargestellt und bearbeitet werden.
Da der Benutzer mehrere dieser Module gleichzeitig geöffnet haben kann gibt es
Tabs die dann das entsprechende Modul laden.
An verschiedenen Stellen des Programms werden nun Dialoge geöffnet die ihren Ursprung
bei JDialog haben.
Bewegt man nun einen Dialog über den Bildschirm dauert der repaint ziemlich lange und
man sieht eine graue Fläche wo der Dialog vorher war.
Hab mir da erstmal nichts weiter bei gedacht, da das Prog ziemlich zeichenintensiv ist und deshalb
ohnehin nicht sehr performant ist.
Vor kurzer Zeit haben wir dann die Tabs entfernt, und arbeiten jetzt mit internal Frames.
Das seltsame ist jetzt, wenn ich den Dialog über ein Frame ziehe sieht man immer noch graue Flächen,
ziehe ich aber ein Frame über ein anderes passiert das nicht.
Warum dauert also der repaint beim JDialog viel länger als bei internal Frames?
Benutzt der einen anderen Buffer, oder ist das ein leightweight/heavyweight Problem?
Hat jemand eine Idee wie man das am praktikabelsten in den Griff kriegt?
thx
Also hab folgendes Problem:
Das Projekt an dem ich gerade arbeite hat ein Framework dessen Hauptbestandteil
ein Modul ist, in dem diverse grafische Inhalt dargestellt und bearbeitet werden.
Da der Benutzer mehrere dieser Module gleichzeitig geöffnet haben kann gibt es
Tabs die dann das entsprechende Modul laden.
An verschiedenen Stellen des Programms werden nun Dialoge geöffnet die ihren Ursprung
bei JDialog haben.
Bewegt man nun einen Dialog über den Bildschirm dauert der repaint ziemlich lange und
man sieht eine graue Fläche wo der Dialog vorher war.
Hab mir da erstmal nichts weiter bei gedacht, da das Prog ziemlich zeichenintensiv ist und deshalb
ohnehin nicht sehr performant ist.
Vor kurzer Zeit haben wir dann die Tabs entfernt, und arbeiten jetzt mit internal Frames.
Das seltsame ist jetzt, wenn ich den Dialog über ein Frame ziehe sieht man immer noch graue Flächen,
ziehe ich aber ein Frame über ein anderes passiert das nicht.
Warum dauert also der repaint beim JDialog viel länger als bei internal Frames?
Benutzt der einen anderen Buffer, oder ist das ein leightweight/heavyweight Problem?
Hat jemand eine Idee wie man das am praktikabelsten in den Griff kriegt?
thx