Hallo,
mal wieder eigenwilliges Problem in BDS2006.
In einem
TF_Einstell:TForm rufe ich mit einem
B_MSuchen:TButton einen
T_Einstell:TTimer auf
Delphi-Quellcode:
procedure TF_Einstell.B_MSuchenClick(Sender : TObject);
begin
takt := 0;
with F_Haupt do
begin
Port.Active := true;
Port.SyncWait := false;
Port.TrmTimeOut := 5000;
Port.RecTimeOut := 5000;
end;
T_Einstell.Interval := 300;
t := '';
E_Transfer := Edit2;
Frager := 'PTW' + #13#10;
T_Einstell.Enabled := true;
end;
Dieser
T_Einstell:TTimer soll drei Takte lang etwas tun
Delphi-Quellcode:
procedure TF_Einstell.T_EinstellTimer(Sender : TObject);
begin
takt := takt + 1;
case takt of
1 :
begin
// n := F_Haupt.Port.TransmittText(Frager);
end;
2 :
begin
// E_Transfer.Text := U_Haupt.t;
end;
3 :
begin
Enabled := false;
takt := 0;
B_Reset.Enabled:=true;
end;
end;
end;
Der Einfachheit halber habe ich aus den Takten von
T_Einstell:TTimer alle Anweisungen rausgenommen.
Problem:
Nachdem ich mit dem
B_MSuchen:TButton den
T_Einstell:TTimer gestartet habe, läuft dieser seine 3 Schritte ab, kommt da an, wo er das
B_Reset:TButton aktiviert, und dann bleibt der Thread des
F_Einstell:TForm einfach stehen.
B_ResetClick wird nicht mehr ausgeführt und das
F_Einstell:TForm bleibt stehen, es läßt sich nicht mehr vergrößern, minimieren usw...
Der Prozess wird vom
T_Einstell:TTimer nicht mehr an
F_Einstell:TForm zurück gegeben.
Hat nicht jemand eine Idee?
Vielen Dank
E. B.
PS: als Schnittstellenprogramm verwende ich TSerial4.2