![]() |
Ereignisbeahndlung für mehrere Buttons
Moin zusammen,
ich habe schon im Forum nachgeschaut, finde aber trotzdem nicht die Lösung zu meinem Problem. Ich habe mehrere Buttons, die via "Tag" laufend nummeriert sind. Nun möchte ich eine Ereignisbehandlungsroutine für alle Buttons anlegen, bei der jeweils eine SQL-Anweisung gestartet wird, abhängig von der Nummer des Buttons:
Delphi-Quellcode:
Ich bekomme es weder mit Self noch FindComponent hin, den Tag des Buttons auszulesen, der gerade gedrückt wurde. Wie muss der richtige Befehl lauten? :gruebel:
MainForm.TempQuery3.Close;
MainForm.TempQuery3.SQL.Clear; try MainForm.TempQuery3.SQL.Add('SELECT Bezeichnung FROM Lager WHERE (Nummer = '+IntToStr(TJvNavPanelButton(Self).Tag)+')') except end; try MainForm.TempQuery3.Open except end; Danke für die Hilfe und liebe Grüße Christian |
Re: Ereignisbeahndlung für mehrere Buttons
mal abgesehen, dass diese exeption behandlung verboten gehöhrt. würd ich den anderen weg gehen und nur einmal die query in einer funktion aufrufen. die verschiedenen buttons rufen dann diese funktion (mit parameter) auf. so sparst du dir dann 'n paar 100 querys zu ändern.
|
Re: Ereignisbeahndlung für mehrere Buttons
Hey,
den Tag-Wert des Buttons bekommst Du in der Ereignisroutine durch den Parameter Sender. Du wirst sowas in der Art wie
Delphi-Quellcode:
benutzen müssen. Voraussetzung ist, dass die Ereignisbehandlungsroutine nur von Buttons vom Typ TJvNavPanelButton aufgerufen wird. Ansonsten musst Du vorher noch den Typ prüfen:
(Sender as TJvNavPanelButton).Tag
Delphi-Quellcode:
Viele Grüße
if Sender is TJvNavPanelButton then
begin ... (Sender as TJvNavPanelButton).Tag end Klaus |
Re: Ereignisbeahndlung für mehrere Buttons
Super Klaus! Vielen Dank! Hat geklappt !!!
:bounce1: :bounce2: :dancer: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 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