AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Umbenennen aller Menuitems und Buttons nach Action
Thema durchsuchen
Ansicht
Themen-Optionen

Umbenennen aller Menuitems und Buttons nach Action

Ein Thema von backdraft · begonnen am 7. Mai 2021 · letzter Beitrag vom 19. Mai 2021
Antwort Antwort
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
335 Beiträge
 
Delphi 11 Alexandria
 
#1

Umbenennen aller Menuitems und Buttons nach Action

  Alt 7. Mai 2021, 17:33
Hallo,

ich bin auf der Suche nach einem Wizard für die automatisierte Möglichkeit alle Buttons, Menuitems usw, so zu benennen, wie die zugehörige Action heißt.

Beispiel:
Action heisst: actMyAction
Button soll dann heissen: btnMyAction
Menuitem: mmMyAction

Gibt es da was?

Danke
Oliver
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Umbenennen aller Menuitems und Buttons nach Action

  Alt 7. Mai 2021, 18:19
Meinst Du tatsächlich die Namen zur Laufzeit?
Da wüsste ich nicht mal ansatzweise wie das funktionieren sollte.

Wenn Du Caption meinst, da gibt es bestimmt möglichkeiten.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
335 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Umbenennen aller Menuitems und Buttons nach Action

  Alt 7. Mai 2021, 18:26
Ich meine den Namen.
Im CnPack ist z.B. ein Wizard (Prefix Werzzeug) bei, der die Komponenten alle umbenennt mit dem richtigen Prefix.

Aus dem Namen "Action1" macht er "act1".

Es geht mir nicht darum, dass er den Code in den .pas Dateien ändert, sondern die DFM und den Namen oben in der Klassendefinition.

Es geht um die Designtime...

Der Grund ist doch recht simpel.
Ich habe eine Action, die auf einem Button liegt, einem Menüeintrag, usw.
Nennt man die Action um, sollte man ja auch die Namen der verbundenen Komponenten - wenn möglich - syncron halten, oder nicht?
Macht den Quellcode einfach übersichtlicher - finde ich.
Oliver

Geändert von backdraft ( 7. Mai 2021 um 18:29 Uhr)
  Mit Zitat antworten Zitat
backdraft

Registriert seit: 19. Apr 2005
Ort: Hückeswagen
335 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Umbenennen aller Menuitems und Buttons nach Action

  Alt 19. Mai 2021, 12:51
Keiner einen Tipp?
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#5

AW: Umbenennen aller Menuitems und Buttons nach Action

  Alt 19. Mai 2021, 12:57
Offenbar gibt es da noch nichts.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#6

AW: Umbenennen aller Menuitems und Buttons nach Action

  Alt 19. Mai 2021, 13:17
Also ich mache das ganz einfach:

Es gibt nur die TActionList (bzw. einen Nachfahren, der das Weiterbeschrieben erledigt).

Menüeinträge und Buttons werden erst beim Programmstart (also zur Laufzeit) erstellt.

Der TActionList-Nachfahre hat ein Attribut von Typ TPanel, in dem im Objektinspektor das TPanel zugeordent wird, auf dem die Buttons liegen sollen.

Es gibt also ein Panel für die Buttons. Je Action ein TSpeedButton. TAction zuweisen, fertig.

Dem Application.Mainform wird ein TMainMenu spendiert. Für jede Kategorie der TActionList wird ein Menüeintrag gemacht.

Die TActions werden, entsprechend ihrer Kategorie, zu diesen Menüeinträge hinzugefügt.

Namen kann man dann vergeben, wie man will, sie sind im Programmablauf aber nicht wirklich von Bedeutung.

Vorteil: Man spart die redundate Pflege von Buttons, Menüitems, ... und vergisst auch nicht mal versehentlich was

Über die Eigenschaften Enabled, Visible, Tag, GroupIndex, ... kann man ggfls. auch steuern, ob Button bzw. Menüeintrag überhaupt erstellt werden sollen.

Bei mir heißt
GroupIndex = 0: Menüeintrag und Button
GroupIndex = -1: Menüeintrag
GroupIndex = -2: Button
GroupIndex = -3: weder Button noch Menüeintrag

Achso: Funktioniert auch mit mehreren TActionList, sogar, wenn sie auf unterschiedlichen Formularen oder in 'nem, Datamodule, ... liegen, die Menüeinträge befinden sich alle im Hauptmenü des Programmes.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:33 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz