![]() |
TComponentName Auswerten bzw "verarbeiten"
Hallo all zusammen,
ich less schon seit Wochen dieses Forum und habe bis jetzt immer gefunden was ich suche, ein nachträgliches Danke andieser Stelle^^ Nun komm ich aber nicht weiter ;( Mein Problem ist das ich ein Popup Menu nutzte. Dieses Menu aber von mehrern Buttons aufgerufen werden kann. Ich muss dummerweise wissen welcher Button das Popup Menu aufgerufen hat. Nach rum Suchen in der der DP habe ich die Eigenschaft PopupMenu1.PopupComponent gefunden. Ich brauche die letzte Zahl des Names des Buttons. z.B Button1. Also muss ich die "1" extrahieren. Das wäre ansich auch kein Grosses Probleme ich weiss nur nicht wie ich den Rückgabewert von PopupMenu1.PopupComponent, der vom Typ TComponent ist, in ein String konvertiere, oder wie ich allgemeint mit TComponent umgehen muss, also wie ich den Namen Splitte wenn jemand eine lösungs Idee hat, wäre ich ihm sehr Dankbar wenn er sie mir Mitteilt :) Gruss Thorben |
Re: TComponentName Auswerten bzw "verarbeiten"
hat jeder Button eine eigene .onClick-Methode?
|
Re: TComponentName Auswerten bzw "verarbeiten"
Nein, die Procedur wird mit dem PopUp Menu gestartet. Wenn jeder ne .onclick hätte wäre es ja kein prob ....
ein popup menu eintrag startet die procedure, und die muss wissen welche Button sie gestartet hat |
Re: TComponentName Auswerten bzw "verarbeiten"
Wie rufst du dann das Menü von verschiedenen Buttons auf?
|
Re: TComponentName Auswerten bzw "verarbeiten"
ich glaube wir reden aneinander vorbei
jeder button hat das Popupmenu in den eigenschaften drin. aber mit onclick wird das nicht gestartet |
Re: TComponentName Auswerten bzw "verarbeiten"
Hi,
es gibt einige Lösungen. Die einfachste ist über den Name, welcher ja in TComponent schon existiert.
Delphi-Quellcode:
Cu, Frank
procedure TForm1.Clickmich1Click(Sender: TObject);
Var AName: String; begin AName := PopupMenu1.PopupComponent.Name; ShowMessage(AName); // zerlege den Name end; |
Re: TComponentName Auswerten bzw "verarbeiten"
Vielen Dank Frank, das hat Funktioniert^^
Ich bleibe ab nun der DB true, ihr habt ein neues Mitglied :) |
Re: TComponentName Auswerten bzw "verarbeiten"
Man kann auch der Einfachheit halber jedem Button ein Tag verpassen und über dieses steuern:
Delphi-Quellcode:
[EDIT] das spart das Zerlegen des Strings...
if Assigned(PopupMenu1.PopupComponent) then
begin case PopupMenu1.PopupComponent.Tag of 0: mach dies; 1: mach das end; end; Frank |
Re: TComponentName Auswerten bzw "verarbeiten"
man kann es auch auf diese (einfache) Art machen:
Delphi-Quellcode:
if PopupMenu1.PopupComponent = ButtonXYZ then
... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:36 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