Hallo,
Ich habe mal folgenden simplen Code erstellt:
Delphi-Quellcode:
function ThreadDoit(p: Pointer): Integer;
begin
//TLabel Beschreiben
Form5.Label5.Caption := '
Tue das ...';
//Funktion aufrufen
Form5.Function1();
//TLabel Beschreiben
Form5.Label5.Caption := '
Erledige das 2te...';
//Funktion aufrufen
Form5.Function2();
//Resultat
result := 0;
end;
procedure TForm5.
Begin(Sender: TObject);
var
hThread : THandle;
ThreadID : Cardinal;
WaitResult : DWORD;
Msg : TMsg;
begin
hThread := BeginThread(
nil, 0, @ThreadDoit,
nil, 0, ThreadID);
repeat
WaitResult := MsgWaitForMultipleObjects(1, hThread, False, INFINITE, QS_ALLINPUT);
if WaitResult = WAIT_OBJECT_0 + 1
then
begin
while PeekMessage(Msg,
Handle, 0, 0, PM_REMOVE)
do
begin
TranslateMessage(Msg);
DispatchMessage(Msg);
end;
end;
until WaitResult = WAIT_OBJECT_0
end;
Leider werden bei mir keine Formelemente erneuert/beschrieben. Weder die Progressbar noch das Label erhält die gewünschte Eigenschaft zugeordnet.
Was mach ich falsch oder wie bekomme ich das zum laufen??