|
|
|||||
| u |
Vous avez surement déjà eu besoin de créer une zone de saisie qui ne doit accepter que des chiffres, et si ce n'est pas le cas, ça ne saurait tarder. La méthode la plus "simple" consiste à se placer dans l'événement "KeyPress" du TextBox et de modifer le paramètre "KeyAscii" (en ayant bien mis ByRef devant au lieu de ByVal, voir article à ce sujet), pour que les caractères non numériques ne soient pas acceptés. Il existe une autre solution basée sur le paramétrage du TextBox. En effet, si nous modifions le style du TextBox en lui donnant l'ordre de n'accepter que des chiffre le tour est joué, mais pour faire celà, il faut utiliser les APIs...
Pour modifier le style d'un contrôle, il faut tout d'abord récupérer son style actuel en utilisant la fonction "GetWindowLong" de la librairie "Coredll" avec comme paramètre "nIndex" la constante GWL_STYLE, puis lui ajouter (avec l'opérateur OR) la constante de style que l'on veut lui appliquer. Le style ainsi créé et réinjecté au contrôle grâce à la fonction "SetWindowLong" (elle aussi incluse dans Coredll).
Pour obliger un contrôle TextBox à n'accepter que des chiffres en saisie, il faut lui appliquer le style ES_NUMBER : public Declare Function
GetWindowLong Lib "coredll" Alias "GetWindowLongW"
(ByVal hwnd As Long, ByVal nIndex As Long) As Long Sub SetNumberBox(byval
wTextBox as TextBox)
|
||||
|
|
|||||
|
Copyright 2001-2004 - Tous droits réservés
|
|||||
|
iPAQ
est un produit de COMPAQ.
|