TextBox

flyman - 18 mai 2000 à 19:26
 Mariner - 18 mai 2000 à 22:42
Dans un textbox je veux saisir la valeur
d'un champ (par exemple: 15564205113). J'aimerai pouvoir attribuer un mask à
mon textbox de façon que la saisie
se fasse comme suit: 155 64 205 113.
La valeur du champ doit rester celle
d'origine , mais avec des espaces à la
saisie.
Est-ce qu'il existe un contrôle ou une
manière de formater le champ ???
merci à la personne qui aurait une
réponse

1 réponse

Tu as trois approches possibles, en ordre de rapidité/facilité:

1. Événement LostFocus
2. Événement KeyPress
3. Événement Change

1. Quand le contrôle perdra le focus, c'est à dire qu'un autre contrôle aura été cliqué ou la feuille fermée, il te sera facile de lire, formater puis afficher le résultat.

2. Ici il te suffira de garder en global le nombre de caractères et une copie du chiffre sans formattage et corrigeant l'affichage à chaque touche pressée. La variable KeyAscii rend le tout facile car tu n'as pas besoin de lire ou analyser le contenu de ton TextBox.

3. Cet événement est dur à contrôler car il arrive dans plusieurs situations dont juste après KeyPress et juste avant LostFocus. Ici tu devra aller lire le dernier caractère de ton TextBox à l'instar de KeyPress.
0
Rejoignez-nous