Thema: Delphi Endlosschleife mit Timer

Einzelnen Beitrag anzeigen

Crazy-MF

Registriert seit: 16. Mär 2004
Ort: Wolfenbüttel
19 Beiträge
 
Delphi 5 Enterprise
 
#10

Re: Endlosschleife mit Timer

  Alt 17. Feb 2005, 15:14
okay okay. jetz funzt es.
ich habe meine oberfläche mit dem editfeld und 2 button
ich gebe meinen intervall an und drücke button1 und er läuft los. sendet brav über lpt1 die daten und nach jedem datenabschnitt unterbricht er für zeit x. aber endlos läuft er nicht. er bleibt nach 30 stehen und fängt nicht wieder von 0 an. wenn ich das aber alles in eine schleife setze und diese auf unedlich laufen lasse kackt alles ab.

hier mal der code:

Delphi-Quellcode:
procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll';
function PortIn(Port : Word): Byte; stdcall; external 'io.dll';

procedure Warten(ms: Cardinal);
var zeit: Cardinal;
begin
  zeit := GetTickCount;
  while ((GetTickCount-zeit)<ms) do
    Application.ProcessMessages;
end;

procedure Senden;
var i: Integer;
    delay: Cardinal; //Verzögerung in Millisekunden
begin
  try
    delay := StrToInt(Form1.Edit1.Text);
  except
  delay := 1000;
end;

Form1.ProgressBar1.Position := 0;
i := 0;
  while (Schleife and (i<30)) do
  begin
    i:= i+1;
    PortOut($378,i);
    Warten(delay);
    Form1.ProgressBar1.Position := Form1.ProgressBar1.Position +1;
  end;
  Schleife := False;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Schleife := False;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Schleife := True;
  Senden;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  Schleife := False;
end;
vielleicht sieht jetzt einer meinen fehler

danke
Crazy-MF
  Mit Zitat antworten Zitat