Thema: Delphi Rekursives Problem

Einzelnen Beitrag anzeigen

Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

Rekursives Problem

  Alt 30. Nov 2007, 14:41
Hi,

Habe hier eine rekursive Funktion die mir Probleme macht. Sie funktioniert eigentlich soweit aber das Problem ist, dass wenn sie vorzeitig das Item findet und noch andere Instanzen (kann man das so sagen?) der Funktion laufen, dann überschreiben die das richtige Ergebnis. Hatte eigentlich noch nie ein Problem. Vielleicht ists auch ein ganz blöder Fehler...

Delphi-Quellcode:
function Find(Items: TObjectList; Item: HMENU): TMenuItem;
var i: Integer;
begin
  for i := 0 to Items.Count-1 do
  begin
    if TMenuItem(Items[i]).Handle = Item then
    begin
      Result := TMenuItem(Items[i]);
      exit;
    end
    else
      Result := Find(TMenuItem(Items[i]).FItems,Item);
  end;
end;
Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat