Herzlich willkommen in der Delphi-PRAXiS, CUBEstorm.
Für Items mit ähnlicher Funktion kannst du sehr einfach einen gemeinsamen event handler bereit stellen. Im folgenden Beispiel wird angenommen, dass du die vier möglichen ViewStyles der tag-property der MenuItems zugeiwsen hast:
Delphi-Quellcode:
procedure TDemoForm.ViewStyleClick(Sender: TObject);
begin
with Sender as TMenuItem do
ListView.ViewStyle := TViewStyle(Tag);
end;
Genausogut könntest du die Eigenschaft Command des MenuItems als Diskriminator in einem CASE-Statement verwenden.
Noch professioneller ist der Einsatz von TActionList (Erste Palettenseite) und die Zuweisung der Actions an die MenuItems, wie ihn Klaus empfohlen hat. Das hat gleich mehrere Vorteile: So implementierst du (OnExecute) die Aktion nur einmal, egal über welche Schnittstelle (Tastatur, Maus) und welche Komponenten (TMenuItem, TButton, TToolButton) der Benutzer deines Programmes die Aktion auslöst. Darüber hinaus kannst du auch gleich die Verfügbarkeit der Befehle über das Event OnUpdate() komfortabel behandeln.
Freundliche Grüße vom marabu