Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi ActionList zur Laufzeit erstellen/füllen (https://www.delphipraxis.net/61948-actionlist-zur-laufzeit-erstellen-fuellen.html)

sir-archimedes 28. Jan 2006 16:12


ActionList zur Laufzeit erstellen/füllen
 
Hallo,

ich möchte gerne eine ActionList zur Laufzeit erstellen und mit Actions befüllen - das klappt aber nicht.

Es gibt zwar eine Methode AddAction - die ist allerdings protected. Wenn ich nun folgendermaßen erstelle:
Delphi-Quellcode:
  with TAction.Create(TModuleLoginService.Instance.ActionList) do
    begin
      Caption := '&Login';
      Name := 'ActnLogin';
      OnExecute := TModuleLoginService.Instance.ActnLoginOnExecute;
    end;
wird sie leider nicht in die Actionlist eingefügt.

Wie kann ich das machen - irgendwie wird es doch gehen...
Achja: in der .dfm-Datei ist für die Erzeugung von ActionLists folgendes enthalten:
Delphi-Quellcode:
  object ActionListMainMenu: TActionList
    Left = 192
    Top = 32
    object actExit: TAction
      Caption = '&Beenden'
      OnExecute = actExitExecute
    end
  end
Daher dachte ich, es wäre evtl. möglich, einfach wie oben die Action dort einzufügen. Das geht nur nicht :-( Kann da evtl. jemand helfen?

Gruß,

sir-archimedes 28. Jan 2006 16:20

Re: ActionList zur Laufzeit erstellen/füllen
 
Manchmal sieht man vor lauter Bäumen den Wald nicht mehr... :wall: :wall:

Die Lösung ist ganz einfach: TAction hat eine Eigenschaft ActionList. Setzt man diese, dann wird die Action in die entsprechende ActionList eingefügt.

Gruß,
Dominik


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:49 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