1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| def NumValidate(keycode, objname, valuetocheck):
if keycode in ["0", "1", "2", "3", "4", "5", "6", "7", "8", "9"]:
return True
if (keycode in [",", "."]) and (len(valuetocheck)==0): #pas == 1
myEntry.delete(0, 'end')
myEntry.insert(0, '0.')
# re-config semble nécessaire
myEntry.config(validate="key", validatecommand=(root.register(NumValidate), '%S', '%W', '%s')) #re-register
return False
if (keycode in [",", "."]) and (len(valuetocheck)==1):
return True
if (keycode in [",", "."]) and ("." in valuetocheck): #pas in valuetocheck[:-1]
return False
if keycode in [".", ","]:
myEntry.delete(0, 'end')
myEntry.insert(0, valuetocheck + '.') #pas valuetocheck[:-1]
# re-config semble nécessaire
myEntry.config(validate="key", validatecommand=(root.register(NumValidate), '%S', '%W', '%s')) #re-register
return False
return False |
Partager