[erledigt] Category und Actionlist Action

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

[erledigt] Category und Actionlist Action

Beitrag von MacWomble »

Hallo,

gibt es einen geplanten Weg, alle actions einer category gemeinsam anzuwählen (z.B. enable/disable) oder wozu ist die category da?
Zuletzt geändert von MacWomble am Di 14. Jun 2016, 08:05, insgesamt 2-mal geändert.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: Category und Actionlist Action

Beitrag von MacWomble »

Ok, ich habe es jetzt so gelöst:

Code: Alles auswählen

var
  I: integer;
  acAction: TAction;
begin
  for I := 0 to Actionlist.ActionCount - 1 do
  begin
    if Actionlist.Actions[I].Category = 'MyCategory' then
    begin
      acAction := TAction(FindComponent(Actionlist.Actions[I].Name));
      acAction.Enabled := False;
    end;
  end;
end;   
Ist das der zu gehende Weg oder geht das einfacher?
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: Category und Actionlist Action

Beitrag von theo »

Oder so:

Code: Alles auswählen

var  Actn:TAction;
begin
 for TContainedAction(Actn) in ActionList do if Actn.Category='MyCategory' then Actn.Enabled:=false;
end;      

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: Category und Actionlist Action

Beitrag von MacWomble »

Danke vielmals!

Ich hatte eben versucht, meine Routine in eine Funktion auszulagern, was an FindComponent scheiterte.
Deine Lösung hingegen funktioniert einwandfrei.
Zuletzt geändert von MacWomble am Di 14. Jun 2016, 08:05, insgesamt 1-mal geändert.
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

Antworten