Swing und resize

Status
Nicht offen für weitere Antworten.

Ceos

Mitglied
gibt es eigentlich eine methode, mit der man dem fenster sagen kann, das es den inhalt anzeigen soll während resize ?? oder muss man das alles selber permanent während der mausbewegung berechnen ? (verwende praktisch nur borderlayout)
 
Ich denke das anzeigen von Inhalten während des resize wird nicht gehen, weil in dieser Zeit nur der rahmen des Fenster gezeichnet wird. Daher wage ich zu bezweifeln, dass es überhaupt möglich ist, selbst wenn du per hand rechnest
 
ok danke ^^ ich lass das mal offen, vielleicht fällt einem noch was ein (bei SWT ist es möglich, aber dort muss man permanent die Position aller Widgets berechnen btw. die aspektrate der einzelnen Composites während der Mausbewegung, da es kein BorderLayout gibt)
 
Leider gibt es keine Methode "componentResizing", nur "componentResized" und da ist es ja schon
zu spät um zu validieren. Man kann das aber auch als Bug ansehen, denn "componentMoved" wird schon
während der Draggingbewegung aufgerufen, also müsste das eigentlich auch bei "componentResized" geschehen.
Der Bug wurde schon vor fast 10 Jahren bei Sun gemeldet. Der Fall ist wohl hoffnungslos:
http://bugs.sun.com/bugdatabase/view_bug.do;:WuuT?bug_id=4028562
 
Was redet ihr denn da?

Einfach in die main-Methode als erstes schreiben:
Code:
Toolkit.getDefaultToolkit().setDynamicLayout(true);
 
Leroy42 hat gesagt.:
Was redet ihr denn da?..
Tja, wir sind nicht da draufgekommen.
Gut daß wir dich haben, funktioniert super :toll:
Das mit dem componentResized find ich aber trotzdem irgendwie unlogisch ???:L

EDIT: ich hab mal bei SUN nachgefragt, hier ist ihre Antwort:
Oleg Sukhodolsky hat gesagt.:
This is not a bug. Such behavior was introduced to compensate for some performance problems we had in the past.
Every resize event for a top level causes relayouting. This operation could be very expensive.
The good news for you is that this is controllable behavior -- you can either use the Toolkit.setDynamicLayout() method
or set the awt.dynamicLayoutSupported Java system property to true.
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben