Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Überprüfen, ob es in einem Textfeld Änderungen gegeben hat?
sunnyandy - Di 06.11.07 09:52
Titel: Überprüfen, ob es in einem Textfeld Änderungen gegeben hat?
Hallo!
Ich habe ein Fenster mit einigen Textfelder und Comboboxen und möchte darüber benachrichtigt werden, wenn der Benutzer eine Eingabe macht oder etwas ändert. Um beim Schließen z.B. zu fragen, ob er Änderungen speichern möchte. Ich schätze mal, dass es überflüssig ist, jedes OnChange-Ereignis zu bearbeiten ;-)
Hilft mir da die Action-Komponente weiter? Habe damit nämlich nocht nichts gemacht...
Für Tipps oder Links wäre ich dankbar!
Gruß, Andy
jaenicke - Di 06.11.07 10:08
Wo liegt das Problem bei OnChange? Du kannst doch die ganzen Eingabefelder in der IDE markieren und allen den selben OnChange-Handler zuweisen. Und die eine Prozedur zu schreiben, ist ja wohl kein Problem.
Jedenfalls gibt es da noch die Eigenschaft Modified, diese gibt an, ob der Text geändert wurde, seit die Eigenschaft das letzte Mal auf False gesetzt wurde. Heißt: Du setzt die Eigenschaft auf False nach jedem Speichern und kannst dann später prüfen, ob sich seitdem was verändert hat. Bei Edits und Memos gibts die Eigenschaft, bei Comboboxen wirst du das AFAIK selber machen müssen.
sunnyandy - Di 06.11.07 12:37
Hallo,
achso ich dachte, dass man so etwas auf eine andere Art löst. OK dann werde ich das erstmal ausprobieren, melde mich nochmal, danke!
Marc. - Di 06.11.07 15:28
Du könntest dir aber auch beim Starten des Programmes bzw. beim Laden des Textes diesen merken und beim Schließen vergleichen.
Text gleich? -> Nicht fragen. Text verändert? -> Speicherdialog!
Oder spricht etwas dagegen? :)
Edit: Nun habe ich jaenickes Antwort korrekt gelesen. Ist natürlich kein Vergleich zu meiner Lösung. :P
grüße,
Marc
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!