AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Auslöser TAction ermitteln, wobei TAction bei N Controls
Thema durchsuchen
Ansicht
Themen-Optionen

Auslöser TAction ermitteln, wobei TAction bei N Controls

Ein Thema von st2000 · begonnen am 21. Aug 2003 · letzter Beitrag vom 21. Aug 2003
Antwort Antwort
st2000

Registriert seit: 23. Apr 2003
Ort: Hamburg
52 Beiträge
 
Delphi 5 Enterprise
 
#1

Auslöser TAction ermitteln, wobei TAction bei N Controls

  Alt 21. Aug 2003, 16:09
Hallo, weiss jemand, wie man in einem TAction.OnExecute - Eventhandler rausfinden kann, von welchem Control die TAction ausgelöst wurde ?

Sender ist TAction, aber das nützt nix, ich suche das Menuitem, welches die TAction zugewiesen bekommen hat.

Und TAction hat kein Auslöser-Komponenten-Attribut wie z.B. TPopUpMenu, wo es zumindest eine PopUpComponent gibt, die man sich mit RTTI vorknöpfen kann....

Hintergrund des Ganzen :

Es gibt ein TTreeNode. Wenn man da per Rechtsclick draufclickt, erscheint ein (in dem Moment dynamisch mit 3 TMenuItems befülltes) TPopUpMenu.
Jedes TMenuItem ist mit einem TAction verknüpft.

Nun will ich letztlich rausfinden, welcher TTreeNode mir das eingebrockt hat ...

Überlege schon, ob ich beim TMenuItem-Erzeugen einen Pointer auf den Node in den TAction-Tag ablege.
Aber kennt jemand was eleganteres ?
Muss doch schon mal vorgekommen sein.... Hab aber mit der Suche nix gefunden.

Bin für jeden Tip dankbar....
Stefan
Keine Softwarepatente ! Die Polen = wahre Freiheitskämpfer !!! Gerade noch rechtzeitig Mitglied geworden, um die Notbremse zu ziehen. Year !!!
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Auslöser TAction ermitteln, wobei TAction bei N Controls

  Alt 21. Aug 2003, 16:42
Moin St2000,

übergib doch,den Index des Nodes in der Tag-Eigenschaft des PopupMenüs.
Vorausgesetzt, dass Du dafür gesorgt hast, dass beim Rechtsklick auf ein Item dieses auch selektiert wird.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
st2000

Registriert seit: 23. Apr 2003
Ort: Hamburg
52 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: Auslöser TAction ermitteln, wobei TAction bei N Controls

  Alt 21. Aug 2003, 17:23
Super, das funzt ! Vielen Dank, Christian.

Habe den Absoluteindex genommen, und kann nun mit dem auslösenden Node jeden Unsinn treiben.

Suuuper !!

Gruss,
ST2000

8)
Stefan
Keine Softwarepatente ! Die Polen = wahre Freiheitskämpfer !!! Gerade noch rechtzeitig Mitglied geworden, um die Notbremse zu ziehen. Year !!!
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Auslöser TAction ermitteln, wobei TAction bei N Controls

  Alt 21. Aug 2003, 17:26
Moin ST2000,

bitte gerne. Freut mich wenn's geholfen hat.

Zitat von st2000:
Habe den Absoluteindex genommen, ...
Es sollte alles möglich sein, was den Node eindeutig indentifiziert.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
st2000

Registriert seit: 23. Apr 2003
Ort: Hamburg
52 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: Auslöser TAction ermitteln, wobei TAction bei N Controls

  Alt 21. Aug 2003, 17:31
Ach so, für den geneigten Leser :

Ich habe den Absoluteindex des TTreeview.Selected (=TTreeNode) in das Tag-Attribut der TAction reingeschrieben. Denn nur die TAction wird als Sender an ihren OnExecute-Eventhandler übergeben.

Das Tag muss natürlich nach Benutzung (am besten gleich im Eventhandler) wieder auf 0 gesetzt werden, da die TAction ja gerade den Sinn hat, für mehrere Controls genutzt zu werden... sonst gibts eigenartige Vorkommnisse...

Grüsse aus HH,

ST2000

Stefan
Keine Softwarepatente ! Die Polen = wahre Freiheitskämpfer !!! Gerade noch rechtzeitig Mitglied geworden, um die Notbremse zu ziehen. Year !!!
  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 04:17 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