Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: TTimer gibt nicht an Fenster zurück - Thread stopt

  Alt 26. Jan 2007, 11:48
Hallo,

ein Tipp zu deinen Takten: Da der Timer explizit gestartet wird, brauchst du keinen Zustand "undefiniert" (bei dir 0). Dein Automat kommt auch mit nur zwei Zuständen aus:

Delphi-Quellcode:
procedure TF_Einstell.T_EinstellTimer(Sender : TObject);
begin
  with Sender as TTimer do
  begin
    // pre-conditions
    Tag := 1 - Tag;
    // actions
    if Tag = 1 then
    begin
      // n := F_Haupt.Port.TransmittText(Frager);
    end else
    begin
      // E_Transfer.Text := U_Haupt.t;
    end;
    // post-conditions
    if Tag = 0 then
    begin
      // nicht die Form, sondern den Timer abschalten:
      Enabled := False;
      B_Reset.Enabled := not Enabled;
    end;
  end;
end;
Nebenbei wird auch das Abschalten deiner Form verhindert.

Grüße vom marabu
  Mit Zitat antworten Zitat