Textfeld wird nicht sofort sichbar
-
Hallo zusammen
In meiner Anwendung habe ich folgendes Problem.
In der BOOL xyz::OnInitDialog() steht ein Aufruf zu einer Funktion x
Die Funktion x ändert einen Wert in meinem Textfeld . Diese Änderung soll sofort sichtbar sein. Also sofort mit dem Entstehen der Maske.
Es wird in der Funktion noch ein Download durchgeführt, erst wenn der Download beendet ist, ändert das Textfeld seinen Wert. Die Änderung steht jedoch vor dem Download. Wieso ändert es den Wert dennoch später.In der BOOL xyz::OnInitDialog() benutze ich vorher noch
CDialog::ShowWindow(SW_SHOW);
damit das das Fenster sofort da ist, aber leider weiß ich nicht wie ich das mit dem Textfeld machen kann. Kann mir jemand helfen?
-
cru schrieb:
Hallo zusammen
In meiner Anwendung habe ich folgendes Problem.
In der BOOL xyz::OnInitDialog() steht ein Aufruf zu einer Funktion x
Die Funktion x ändert einen Wert in meinem Textfeld . Diese Änderung soll sofort sichtbar sein. Also sofort mit dem Entstehen der Maske.
Es wird in der Funktion noch ein Download durchgeführt, erst wenn der Download beendet ist, ändert das Textfeld seinen Wert. Die Änderung steht jedoch vor dem Download. Wieso ändert es den Wert dennoch später.In der BOOL xyz::OnInitDialog() benutze ich vorher noch
CDialog::ShowWindow(SW_SHOW);
damit das das Fenster sofort da ist, aber leider weiß ich nicht wie ich das mit dem Textfeld machen kann. Kann mir jemand helfen?
Versuche einmal die Funtkion
UpdateData(FALSe); // oder ists eher... UpdateData(TRUE)M //damit das gesamte Fenster neu gezeichnet wird: UpdateWindow();
Siehe MSDN für Beschreibung
-
Verschieb den Download am besten in einen Thread.
-
ja vor dem Download
UpdateData(FALSE);
es ist False, True ist wenn ich aus Editfeldern oder so auslesen will!
dann sollte es doch gehen und wenn nicht wirklich auf den Thread ausweichen
-
Danke
mit UpdateWindow() gehts.