AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi TDBEdit, TDBLookupComboBox, TField und OnSetText-Event
Thema durchsuchen
Ansicht
Themen-Optionen

TDBEdit, TDBLookupComboBox, TField und OnSetText-Event

Offene Frage von "r_kerber"
Ein Thema von r_kerber · begonnen am 22. Apr 2006 · letzter Beitrag vom 26. Apr 2006
 
Benutzerbild von r_kerber
r_kerber

Registriert seit: 11. Feb 2003
Ort: Trittau
3.538 Beiträge
 
Delphi XE Professional
 
#1

TDBEdit, TDBLookupComboBox, TField und OnSetText-Event

  Alt 22. Apr 2006, 08:55
Datenbank: Oracle, aber eigentlich egal • Version: 9, 10 • Zugriff über: BDE, aber ebenfalls egal
Moin moin,

ich habe folgendes Problem. Auf einer Eingabemaske befinden sich mehrere TDBEdit-Boxen und TDBLookupComboBoxen. Sobald in einem TBEdit ein Wert eingegeben/verändert wurde, wird in einem onValidate-Event-Handler eine Stored Procedure (für alle TFields wird dieselbe SP verwendet) auf gerufen, welche die anderen Feldwerte ermittelt. Diese werden dann in die entsprechenden DB-Felder geschrieben. Dadurch ändert sich natürlich auch der Wert der TField-Objekte und somit auch der Edit- und Comboboxen, was sofort wiederum ein neues onValidate für die TFields auslöst. Damit nun dadurch keine Endlosschleife ausgelöst wird, werden der Stored Procedure zwei zusätzliche Parameter übergeben, zum einen den Sender der das aktuelle onValidate ausgelöst und den "Initial_Sender", also das Object, welches das erste onValidate ausgelöst hat. Um diesen zu ermitteln wird zusätzlich das OnSetText-Event von TField abgefangen. Diese wird ausgelöst, unmittelbar nachdem man in einem TEdit einen Wert eingibt/ändert. Doch leider funktioniert das nur mit TDBEdit. Eine TDBLookupComboBox löst kein OnSetText-Ereignis aus, wenn ein anderer Eintrag ausgewählt wird. Ich suche nun eine Möglichkeit auch für eine LookupComboBox den "Initial_Sender" zu ermitteln, also etwas in der Art
  • Element in TDBLookupComboBox ändern
  • ComboBox verlassen
  • irgendein Event --> Zwischenspeichern des auslösenden Senders
  • OnValidateEvent --> Ermittel des aktuellen Senders, Starten der SP (mit den Parametern initial_sender und sender)
  • ...
Und dieses "irgendein Event darf nur einmal ausgelöst werden, nachdem sich der in der Combobox etwas geändert hat.
  Mit Zitat antworten Zitat
 


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 16:19 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