Ich versuche mich gerade wieder einmal mit Tkinter. Allerdings scheinen die Entrys und ich uns nicht so ganz zu verstehen.
Habe in meinem Skript folgenden Eintrag für ein Entry.
Code: Alles auswählen
varia4 = Tkinter.DoubleVar()
entry4 = Tkinter.Entry(master = frame1, validate = 'key', validatecommand =
Betrag, textvariable = varia4)
entry4.bind('<Key>', BetragTmp)
entry4.grid(column = 1, row = 4, sticky = W, padx = 6, pady = 6)
Damit nicht irgend jemand auf die Idee kommt, in das Feld Buchstaben einzugeben, wollte ich das über validate abfangen.
Problem: Das geht nur, wenn ich auf textvariable verzichte. Dann muss ich aber irgendwie testen, ob der Betrag auch zum Type float gehört.
Und da weiß ich ehrlich gesagt nicht, wie ich das so einfach anstellen soll, da Entry.get() ja immer einen String zurück gibt.
Gibt es nicht eine Möglichkeit mit validate, validatecommand und textvariable zu arbeiten?
Ich versteh auch nicht, warum sich das bei Tkinter widerspricht.
Gruß
Marcus
<Edit>
Sorry, hab das Wichtigste ja gar nicht mit geschrieben. Nämlich was nicht geht.
Code: Alles auswählen
entry4.bind('<Key>', BetragTmp)
</Edit>