Einzelnen Beitrag anzeigen

value is NULL

Registriert seit: 10. Sep 2010
249 Beiträge
 
#6

AW: Alternative zu While

  Alt 2. Okt 2012, 12:16
also danke schon mal für die vielen Antworten ...

Habe jetzt viel gelesen aber bin noch nicht wirklich schlauer. Habe mir ein kleines Testprogramm gemacht:

Delphi-Quellcode:
unit testcode;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    start: TButton;
    Memo1: TMemo;
    abbrechen: TButton;
    procedure startClick(Sender: TObject);
    procedure abbrechenClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

  function inserts() : string;

var
  Form1: TForm1;
  ThreadID: DWORD;
  ThreadHandle: THandle;

implementation

{$R *.dfm}

function inserts() : string;
var
  i : integer;
begin
  i := 0;
  while i < 10000 do begin
    Form1.Memo1.Lines.Add('Number '+inttostr(i));
    sleep(1000);
    i := i + 1;
  end;
  EndThread(0);
end;

procedure TForm1.abbrechenClick(Sender: TObject);
begin
  // ?
end;

procedure TForm1.startClick(Sender: TObject);
begin
  ThreadHandle:=CreateThread(nil, 0, TFNThreadStartRoutine(@inserts), nil, 0, ThreadID);
end;

end.
was müsste ich tun, damit bei TForm1.abbrechenClick der Thread beendet wird bzw. wann weiß ich in startClick wann function inserts fertig ist?

Danke und LG
  Mit Zitat antworten Zitat