![]() |
Re: Aktionen zur Laufzeit einfügen?
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:
Wenn man die Struktur des Actionmanagers erst einmal durchschaut hat, ergibt plötzlich alles einen Sinn 8-)
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]); 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... |
Re: Aktionen zur Laufzeit einfügen?
Mal so am Rande - habe ich die Frage in der falschen Kategorie gestellt? Bin mir nicht ganz sicher...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz