Ok hier ha ich nochmal den code:
Delphi-Quellcode:
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~ Wörter filtern ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
procedure TWortsuche.Filtern(Sender: TObject);
var
iLauf:integer;
begin
For iLauf:=0 to Listbox_Seitenwoerter.Items.Count-1 do
Begin
IF Sperrliste.ListBox1.Items.IndexOf(ListBox_Seitenwoerter.Items[iLauf])< 0 then
begin
IF LENGTH(Listbox_Seitenwoerter.Items[iLauf])>1 then
begin
ListBox_NichtSperrliste.Items.Add(ListBox_Seitenwoerter.Items[iLauf]);
Listbox_NichtSperrliste.Refresh;
end;//if
end;//if
end;//for
end;
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~ Wörter doppelte zählen ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
procedure TWortsuche.Zaehlen(Sender: TObject);
var i,iZahler:integer;
sString:string;
begin
while ListBox_NichtSperrliste.Items.Count<>0 do
begin
sString:=ListBox_NichtSperrliste.Items[0];
iZahler:=0;
i:=0;
while i<=ListBox_NichtSperrliste.Items.Count-1 do
begin
If ListBox_NichtSperrliste.Items[i] = sString then inc(iZahler);
inc(i);
end;//while2
For i:=1 to iZahler do
begin
If ListBox_NichtSperrliste.Items[0] = sString then ListBox_NichtSperrliste.Items.Delete(0);
end;//for
ListBox_Gefiltert.Items.Add(sString);
ListBox_Anz.Items.Add(intToStr(iZahler));
end;//while1
end;
das sind die beiden proceduren, die nach dem abbrechen noch durchlaufen werden sollen.
Sie werden einfach auf OnClick aufgerufen.
Immer wenn ich mein programm etwas länger laufen lasse( so ca 30 sek.), dann hängt es in den beiden ewig lange...
hatte schonmal bei 60 sek laufzeit 30 Minuten laufen lassen ohne das was passiert ist...