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."