Änderungen in einem Dialog "erfassen"
-
Hallo,
ich habe einen Dialog mit zahlreichen CEdit's. Jetzt würde ich gerne vor schließen des Dialogs abfragen ob sich Daten (durch den User) geändert haben.
Muss ich für jedes Element ein EN_CHANGE - Ereignis anlegen oder gibt es da eine "globale" Möglichkeit. Ich habe es auch schon mit einem RANGE-Makro probiert, bin mir aber über die Verteilung der ResourcenID nicht ganz im klaren: werden die pro Dialog neu abgelegt? Wie bekomme ich die "kleinste" und die "größte"?Danke für Eure Antworten und Hilfestellung...
-
Ich würde für jedes CEdit ein EN_CHANGE - Ereignis einfügen, jedoch wird bei allen die gleich Methode aufgerufen in der eine Boole'sche Member-Variable auf true gesetzt wird:
void CMyDialog::OnChangeData() { m_bDataChanged = true; }
-
...oder du machst 'ne unterklasse von CEdit mit einem statischen member (bool changed) drin und ersetzt dann deine CEdits gegen objekte dieser klasse.