Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Funktion im Hintergrund ausführen


Iehova - Di 31.08.04 13:45
Titel: Funktion im Hintergrund ausführen
Hi,

in meinem Programm wird nach jedem Mausklick eine HTTP-Seite aufgerufen (per tidhttp). Es liefert dabei nur Daten ab, das Ergebnis wird nicht (sofort) benötigt. Jedoch hält das Programm dabei immer an.

Hier der Code: (btw, ist das richtig erstellt? War mehr durch Probieren entstanden ;) )


Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure TForm1.Button1Click(Sender: TObject);
var idhttp:TIdHTTP;
begin
 idhttp:=tidhttp.Create(self);
 try
 Memo1.Lines.Add(idhttp.Get('http://www.webseite.de/bla.php?daten=daten'));
 finally
 idhttp.Free;
 end;
end;


Ich suche eine Möglichkeit, wie diese Funktion im Hintergrund geschehen kann, also das Programm im Vordergrund weiterläuft, während die obige Funktion im Verborgenen ausgeführt wird.

Danke für jede Antwort :)


inselberg - Di 31.08.04 13:48

Suche in: Delphi-Forum, Delphi-Library THREADS


Iehova - Di 31.08.04 13:55

Da les ich mich mal durch - danke :)


.Chef - Di 31.08.04 13:57

Wieder eins der drei beliebtesten Probleme. ;-)


Iehova - Di 31.08.04 13:59

Wahrscheinlich sollt ich prophylaktisch schonmal gucken, was doublebuffered macht ;)


Böser Borstel - Di 31.08.04 14:12

timer.ontimer arbeitet so weit ich weiß immer im hintergrund


Udontknow - Di 31.08.04 14:19

Das ist falsch, der Timer wartet nur im Hintergrund, Arbeiten tut er "im Vordergrund", also durch den VCL-Hauptthread.

Cu,
Udontknow


Böser Borstel - Di 31.08.04 14:24

auf jeden fall arbeiten TServerSocket und TClientSocket mit hintergrund, man muß nur befehle an sich selbst senden