PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [QT] Funktion/Signal nachdem Widget gezeichnet wurde



sohler
23-05-2005, 16:27
Hallo !

Ich suche eine Möglickeit mitzukriegen, wann mein Widget gezeichnet wurde.

Hintergrund: Ich habe ein eigenes Widget geschrieben, dass Daten anzeigt, die sehr lange brauchen, um initialisiert zu werden. Wenn ich die Initialisierung im Konstruktor vornehme, dauert es zu lange bis der Dialog aufgeblendet wird.

Mein Gedanke ist nun, das Widget erstmal "leer" anzuzeigen und nach dem es angezeigt wird zum leben zu erwecken.

Ich suche eine Funktion, ein Event oder Signal welches nach dem Anzeigen des Widget aktiviert wird. So etwas wie showEvent() oder polish() _vor_ dem Aufblenden.

Gruß,
S. Ohler

anda_skoa
23-05-2005, 16:45
Wenn du showEvent() überschreibst, ist das bevor das Widget sichtbar wird.
Erst wenn du den Aufruf weiter leitest, kommt das Widget.

Allerdings könntest du die Initialisierung eventuell auch mit einem SingleShot Timer zeitlich verschieben.

Ciao,
_

sohler
24-05-2005, 09:51
Hallo !

Ich habe das mit dem QTimer gestern abend ausprobiert. Und es funktioniert. Nur leider bleibt die Anwendung dann während der Initialisierung nicht bedienbar. Logisch, da alle Signale im gleichen (Qt-)Thread abgearbeitet werden und meine Initialisierung den (Qt-)Thread blockiert.

Ich muss wohl für die Initialisierung einen eigenen Thread aufmachen.

Gruß,
S. Ohler

anda_skoa
24-05-2005, 14:09
Oder vielleicht die Initialisierung in Schritten machen, wenn das möglich ist.

Ciao,
_