Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
valid_car_entry [2008/05/21 07:56] tyrtamos |
valid_car_entry [2009/10/17 17:11] (Version actuelle) tyrtamos |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Comment | + | ====== Comment |
===== Objectif ===== | ===== Objectif ===== | ||
- | Dans certains cas de saisie de données, il vaut mieux vérifier caractère | + | Dans certains cas de saisie de données, il vaut mieux vérifier |
===== Principe ===== | ===== Principe ===== | ||
On utilise des options du widget Entry (validate et validatecommand) qui, curieusement, | On utilise des options du widget Entry (validate et validatecommand) qui, curieusement, | ||
+ | |||
+ | ===== Comment empêcher certains caractères ===== | ||
Dans l' | Dans l' | ||
Ligne 80: | Ligne 82: | ||
app=Application(fen) | app=Application(fen) | ||
fen.mainloop() | fen.mainloop() | ||
+ | </ | ||
+ | ===== Comment convertir certains caractères au fur et à mesure qu'ils sont tapés ===== | ||
+ | |||
+ | On utilise la même technique que précédemment. | ||
+ | |||
+ | <code python> | ||
+ | # | ||
+ | # -*- coding: | ||
+ | |||
+ | from __future__ import division | ||
+ | |||
+ | import Tkinter | ||
+ | |||
+ | ################################################################## | ||
+ | class Application(Tkinter.Frame): | ||
+ | |||
+ | def __init__(self, | ||
+ | |||
+ | Tkinter.Frame.__init__(self, | ||
+ | |||
+ | self.grid() | ||
+ | self.varsaisie = Tkinter.StringVar() | ||
+ | self.varsaisie.set("" | ||
+ | self.saisie=Tkinter.Entry(self, | ||
+ | |||
+ | self.saisie.bind("< | ||
+ | | ||
+ | self.saisie.grid(row=0, | ||
+ | self.saisie.focus_set() | ||
+ | |||
+ | self.alpha1 = u" | ||
+ | self.alpha2 = u" | ||
+ | |||
+ | def quelletouche(self, | ||
+ | self.touche=event | ||
+ | self.saisie.configure(validate=" | ||
+ | |||
+ | def veriftouche(self): | ||
+ | i = self.alpha1.find(self.touche.char) | ||
+ | if i>=0: | ||
+ | self.saisie.event_generate(self.alpha2[i]) | ||
+ | return False | ||
+ | else: | ||
+ | return True | ||
+ | | ||
+ | ############################################################################## | ||
+ | # lancement et affichage au centre de l' | ||
+ | # | ||
+ | if __name__ == " | ||
+ | fen=Tkinter.Tk() | ||
+ | fen.title(u" | ||
+ | app=Application(fen) | ||
+ | fen.mainloop() | ||
</ | </ | ||
+ | |||
+ | \\ | ||
+ | Amusez-vous bien! | ||
+ | |||
+ | |||
+ | < | ||
+ | < | ||
+ | <style type=" | ||
+ | <!-- | ||
+ | body {background-image: | ||
+ | --> | ||
+ | </ | ||
+ | </ | ||
+ | < | ||
+ | </ | ||
+ | </ |