![]() |
Delphi-Version: 2009
TMenuItem bringt in Caption immer "&" Zeichen
Ich erzeuge dynamisch ein Untermenu und bekomme dann beim Auslesen von Caption immer das "&" Zeichen mit im String. Habe schon einiges versucht, aber es bleibt drin.
Erzeugt werden die Einträge wie folgt:
Delphi-Quellcode:
Auswertung dann wie folgt:
for i := 0 to Cnt - 1 do begin
NewItem:=TMenuItem.Create(self); NewItem.Caption := SL[i]; NewItem.OnClick := SelMachine; NewItem.ShortCut := 0; NewItem.AutoHotkeys := maManual; NewItem.Name := 'MaIdx' + IntToStr(i); NC5AnalyseMaschine1.Add(NewItem); end; end;
Delphi-Quellcode:
Hier kommen dann Einträge wie
if Sender is TMenuItem then begin
IP := TMenuItem(Sender).Caption; &M01 M&02 M0&3 Das muss doch irgendeine Eigenschaft sein, die das macht oder? Die habe ich jedenfalls noch nicht gefunden. |
AW: TMenuItem bringt in Caption immer "&" Zeichen
Wird vielleicht irgendwo (und sei es durch einen Seiteneffekt)
![]() |
AW: TMenuItem bringt in Caption immer "&" Zeichen
Wobei man auch fragen könnte, warum das so störend ist?
(ich hoffe ja nicht, daß da jemand später die Idems über ihre Captions programmseitig ansprechen will :roll:) In Vista/7 werden diese Markierungen ja meist ausgeblendet und den Benutzer stört's auch nicht ... wobei er sich vielleicht sogar freut, weil er so diese Tastaturkürzel benutzen kann. |
AW: TMenuItem bringt in Caption immer "&" Zeichen
Zitat:
|
AW: TMenuItem bringt in Caption immer "&" Zeichen
Wenn Du schon einen Namen für die Items vergibst, kannst Du sie auch darüber ansprechen (oder eben über ihren Index im Menü).
|
AW: TMenuItem bringt in Caption immer "&" Zeichen
Ja, aber ich brauche eigentlich den Text für weitere Recherchen, den ich unter Caption eingetragen habe. Deshalb wollte ich gleich Caption eintragen und dann bei der Auswahl des Menueintrages damit weiterarbeiten.
TMenuItem(Sender).RethinkHotkeys vom gewählten Eintrag bringt false Im angezeigten Menu wird aber nichts unterstrichen, nur wenn ich dann Sender.Caption lese. Ich nutze noch XP, wenn das was entscheidendes ist. |
AW: TMenuItem bringt in Caption immer "&" Zeichen
Man kann sich die Objektinstanz merken, gleich da, wo man das erstellt hat.
Man kann einen Namen ( .Name ) vergeben und FindComponent nutzen, denn dafür ist der Name da und der DFM-Loader nutzt dieses auch schon erfolgreich und sehr ausgiebig. Vorallem Erstes wäre der beste Weg, da schnell, sicher und vorallem direkt. Anzeige Namen nimmt man niemals für eine Identifizierung, da sowas leicht von außen verändert/manipuliert werden kann und man vorallem Probleme bekommt, wenn man mal an eine Lokalisierung weiterdenkt und alles was in diese Richtung verläuft. |
AW: TMenuItem bringt in Caption immer "&" Zeichen
Danke für die Tipps. Mal sehen, wie ich das umsetzen kann.
|
AW: TMenuItem bringt in Caption immer "&" Zeichen
Du kannst den Text ja nochmal in den Hint kopieren und diesen dann auslesen oder man holt den Text dann nochmal von da, wo er auch beim Befüllen hergekommen ist.
Aber wie du siehst ist .Caption nicht sonderlich geeignet, um es für eine Identifizierung zu nutzen. :zwinker: |
AW: TMenuItem bringt in Caption immer "&" Zeichen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 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