Hallo zusammen,
wie verwalte ich mehrere Threads über eine Listbox?
... so starte ich (vereinfacht dargestellt):
Code:
var
xThread: TMyThread;
procedure TForm1.ButtonStartClick(Sender: TObject);
begin
xThread := TMyThread.Create;
xThread.FreeOnTerminate := True;
inc(iTNr);
xThread.Nr := iTNr;
xThread.Id := xThread.ThreadID; //nur zur Thread Unterscheidung
xThread.Start;
ListBox1.Items.AddObject('Thread ' + IntToStr(iTNr), xThread);
...
... das Stoppen ausgewählter Threads haut noch nicht hin ?!?
Code:
procedure TForm1.ButtonStopClick(Sender: TObject);
begin
if ListBox1.ItemIndex > -1 then
begin
xThread.Terminate; //stoppt nur den letzten!!!
ListBox1.Items.Delete(ListBox1.ItemIndex);
...
Wie komme ich da an das hinterlegte Objekt? (hab da was von Casten gelesen, kann es aber in der Syntax nicht umsetzen)
Gruß MarLe