Hallo DelphiSourcer.
Zunächst mal solltest Du die Delphi-Code-Tags verwenden, dann ist Dein Code lesbar (geht auch noch nachträglich mit "Edit").
Zitat von
DelphiSourcer:
Delphi-Quellcode:
Menu.Items.Add(Datei);
//Zeile 1
Menu.Items.Items[0].Insert(0,Neu);
//Zeile 2
// Sobald ich Untermenüs einfügen will, Wird Exception
// EListError ausgelöst
// Meldung: Listenindex überschreiete das Maximum (1)
// Menu.Items.Items[1].Add(Oeffnen);
// Menu.Items.Items[2].Add(N1);
// Menu.Items.Items[3].Add(Beenden);
Menu.Items.Add(Bearbeiten);
Menu.Items.Add(Fenster);
Menu.Items.Add(Hilfe);
Wenn ich das richtig verstehe (ich habe das so noch nie gemacht), sieht die Sache so aus:
Zeile 1 erzeugt das Objekt
Menu.Items[0]
Das ist das Menü "Datei". Dieses hat noch keine Untermenüpunkte.
Der Aufruf in Zeile 2 ginge auch kürzer:
Delphi-Quellcode:
Menu.Items[0].Insert(0, Neu) // wg. Default-Property
// alternativ:
Menu.Items[0].Add(Neu)
Damit existiert das Objekt Menu.Items[0].Items[0] (nämlich "Datei->Neu").
Das Objekt Menu.Items[1] existiert aber noch nicht, deshalb wird bei Deinem Versuch, mit Menu.Items[1].Add(Oeffnen)
auf das Objekt zuzugreifen, eine
Exception ausgelöst.
Der Abschnitt müsste also (wie gesagt, wenn ich es richtig sehe) so aussehen:
Delphi-Quellcode:
Menu.Items.Add(Datei);
Menu.Items[0].Add(Neu);
Menu.Items[0].Add(Oeffnen); /etc.
Den zweiten problematischen Abschnitt habe ich mir nicht angesehen, aber vielleicht hat sich das ja auch erledigt- sofern mein Vorschlag funktioniert.
HTH
Urs