"Validator" für TextCtrl
Verfasst: Mittwoch 2. März 2011, 09:29
Hi,
Ich möchte, dass während der Eingabe in ein TextCtrl geprüft wird, ob die eingegebenen Daten erlaubt sind. Als einfaches Beispiel sollen in eimen TextCtrl nur Ziffern erlaubt sein.
Mein Validator dafür sieht so aus:
Dann setze ich den Validator so: (self.y ist das TextCtrl)
Passieren tut deshalb jedoch nix. Ich kann Buchstaben in das Feld reintippen soviel ich will! Was überseh ich? Außerdem: Was macht denn der Validator wenn er eine Fehleingabe findet: Behält das Feld den Fokus, kann ich das Feld irgendwie einfärben, kann ich den Wert vor dem ändern hineinschreiben, ...
Ich hoffe ich habe das Konzept der Validatoren richtig verstanden - könnte natürlich auch sein dass ich auf dem falschen Bahnsteig auf den Zug warte.
Vielen Dank vorab für die Hilfe,
LG Florian Lagg
http://www.it-konzept.at
Ich möchte, dass während der Eingabe in ein TextCtrl geprüft wird, ob die eingegebenen Daten erlaubt sind. Als einfaches Beispiel sollen in eimen TextCtrl nur Ziffern erlaubt sein.
Mein Validator dafür sieht so aus:
Code: Alles auswählen
class IntValidator( wx.PyValidator ):
def Clone (self):
return self.__class__()
def Validate(self, window):
try:
value = int( window.GetValue())
return true
except ValueError:
return false
def TransferToWindow(self):
return True
def TransfertFromWindow(self):
return True
Code: Alles auswählen
self.y.SetValidator( IntValidator() )
Ich hoffe ich habe das Konzept der Validatoren richtig verstanden - könnte natürlich auch sein dass ich auf dem falschen Bahnsteig auf den Zug warte.
Vielen Dank vorab für die Hilfe,
LG Florian Lagg
http://www.it-konzept.at