Entwickler-Ecke
Internet / Netzwerk - Indy und Label
Kaspar - Mi 29.10.08 20:27
Titel: Indy und Label
Hallo
Ich habe ein dummes Anfängerproblem, welches mich mich allmählich zur verzweiflung bringt. Hoffe Ihr helft mir trotz meiner geringen Erfahrung weiter :-).
Also folgend der Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15:
| procedure TForm2.Button1Click(Sender: TObject);
var lStream: TFileStream; begin label1.visible:=true; lStream:=TFileStream.Create('C:\Datei.jpg', fmCreate or fmShareDenyNone); try idHTTP1.Get('http://meineseite.org/meinbild.jpg', lStream); finally lStream.Free; end; Image1.Picture.LoadFromFile('C:\Datei.jpg'); label1.visible:=true; end; |
Das Problemm ist nun, dass das lablel1 erst auf visible gesetzzt wird wenn das bild fertig geladen wird. Ich mochte aber for dem Download auf Visible, sozusagen als "Ladeanzeige". Habt Ihr eine Idee warum das erst nach dem Download ausgeführt wird?
Vielen Dank im Voraus!
Gruss Kaspar
Moderiert von
Gausi: Quote- durch Delphi-Tags ersetzt
LexXis - Mi 29.10.08 21:06
Schau dir dazu mal die OnWork*-Ereignisse von TidHTTP an, sollte das sein was du suchst.
mfg
Kaspar - Mi 29.10.08 21:35
Hallo LexXis,
Vielen Dank für deine Antwort. Habs wiefolgt eingebaut:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TForm2.IdHTTP1Work(ASender: TObject; AWorkMode: TWorkMode; AWorkCount: Integer); begin label1.visible:=true; end; |
Leider wird das nun erst ausgeführt wenn der Download beender ist.
Yogu - Mi 29.10.08 22:11
Der Status des Labels wird zwar verändert, aber es wird nicht neu gezeichnet. Füge ein Application.ProcessMessage direkt nach dem Anzeigen des Labels ein, dann müsste das klappen.
(Als Alternative zu Visible := True kannst du auch Show verwenden. Ist schneller geschrieben und vor allem übersichtlicher.)
Kaspar - Mi 29.10.08 22:56
Hallo,
Hat wunderbar geklappt mit Application.ProcessMessages; und .show.
Vielen Dank!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!