Einzelnen Beitrag anzeigen

ringli

Registriert seit: 7. Okt 2004
510 Beiträge
 
Delphi 11 Alexandria
 
#23

Re: Popup menü items sortieren?

  Alt 17. Mai 2009, 14:32
Wie muss ich den Code von toms eigentlich erweitern damit auch Untermenüs alphabetisch sortiert werden? Ich habe den Code schon etwas erweitert, nur leider wird immer das letzte Untermenü nicht mehr sortiert. Wo ist mein Denkfehler?
Delphi-Quellcode:
procedure SortPopupMenu(PopupMenu: TPopupMenu);
var
  n1, n2 : Integer;
  m1, m2 : Integer;
  mi1, mi2 : TMenuItem;
begin

  with PopupMenu, Items do
    begin
      for n1 := 0 to Count - 1 do
        begin
          for n2 := n1 + 1 to Count - 1 do
            begin
              if Items[n1].Caption > Items[n2].Caption then
                begin
                  mi1 := Items[n2];
                  Delete(n2);
                  Insert(n1, mi1);

                  for m1 := 0 to Items[n1].Count - 1 do
                    begin
                      for m2 := m1 + 1 to items[n1].Count - 1 do
                        begin
                          if items[n1].items[m1].Caption > items[n1].items[m2].Caption then
                            begin
                              mi2 := Items[n1].Items[m2];
                              Items[n1].Delete(m2);
                              Items[n1].Insert(m1, mi2);
                            end;
                        end;
                    end;
                end;
            end;
        end;
    end;
end;
  Mit Zitat antworten Zitat