Einzelnen Beitrag anzeigen

fortuneNext

Registriert seit: 11. Aug 2007
Ort: Neuss
133 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Aktionen zur Laufzeit einfügen?

  Alt 11. Dez 2008, 16:22
Wow,
so langsam läufts echt Danke nochmal allen bisherigen Helfern!



Nun habe ich mir folgende - zugegeben sehr verworrene Codezeilen - zurechtgepflückt. (Aufs Wichtige reduziert)

Delphi-Quellcode:
  for x := 3 to MainMenu_ActMan.ActionCount do
    MainMenu_ActMan.Actions[x].Free;
  for x := 1 to length(FNAGBasicControl.Lg_LanguageFileList) - 1 do
        MainMenu_ActMan.AddAction(CreateLanguageAction(AllesAufNameZusammengefasst, LanguageActionExecute), MainMenu_ActMan.ActionBars[0].Items[0].Items[3].Items[x - 1]);
Wenn man die Struktur des Actionmanagers erst einmal durchschaut hat, ergibt plötzlich alles einen Sinn
Nun das (wahrscheinlich letzte) Problem:
Damit die LanguageFiles im Submenu "Languages" aufgelistet werden, muss das Teil ja als Client mit Verweis auf die Action gespeichert werden.


Gekürzte Struktur:

MainMenu_ActMan
--ActionBars
----ActionBars[0]
------Items
--------Items[0] "Options"
----------Items
------------Items[0] "Eine Option"
------------Items[1] "Eine andere Option"
------------Items[2] "Eine dritte Option"
------------Items[3] "Languages"
--------------Items -> Hier müssten die Clients ja eigentlich hin, denke ich.

Wie krieg ich sie also dort rein? Mit der Zeile im MainMenu_ActMan.AddAction habe ich ja den genauen Ort zur Speicherung bereits spezifiziert - also eigentlich sollte nichts mehr im Wege stehen. Nun bekomme ich aber die Fehlermeldung:
"Listenindex überschreitet das Maximum (3)"
in der AddAction Zeile. Ich schließe daraus: Items[0], Items[1] etc gibt es noch überhaupt nicht - macht ja auch Sinn. Wie aber erstelle ich sie? SetLength klappt nicht, TActionClients und Array of TActionClient stimmen nicht überein...
Tim
"Hilfe & Support konnte nicht geöffnet werden. Bitte öffnen sie Hilfe & Support, um das Problem zu beheben."
"No Keyboard found. Press F1 to continue."
  Mit Zitat antworten Zitat