kipich
Messages postés19Date d'inscriptionjeudi 15 avril 2004StatutMembreDernière intervention 9 août 2006
-
18 juil. 2006 à 10:41
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 2010
-
18 juil. 2006 à 15:58
Bonjour,
J'ai, dans un formulaire, une TextBox. Lorsque je commence à entrer des caractère je voudrais activer un bouton de ce formulaire. Mon code est donc :
Private Sub Texte1_KeyPress(KeyAscii As Integer)
If (Texte1.Value <> "") Then
bt_valider.Enabled = True
Else
bt_valider.Enabled = False
End If
End Sub
Malheuresment, ceci ne marche pas. En effet, Texte1.value correspond à la valeur d'avant. Ex : je commence par taper "toto", Texte1.value est vide, et si je rajoute "tata", Texte1.value est egal à "toto" est ainsi de suite. Je ne comprend pas pourquoi la valeur de Texte1 n'est mise à jour en direct ?
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 18 juil. 2006 à 10:53
C'est normal que ce soit vide puisque tu met la condtion lorsque tu presse une touche. Au moment ou tu presse, la textBox est vide. Ce que tu peux faire, c'est mettre ta condition lorsque ta textbox perd le focus (LostFocus ou quue chose comme ca...)
(Si la réponse vous convient, appuyez sur réponse acceptée...). Noubliez pas de lire le REGLEMENT
Il y a plusieurs facon d'être con ,mais un con choisit toujours la pire<>
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 18 juil. 2006 à 10:55
La valeur de Texte1 n'est pas mise à jour en direct tout simplement parce l'évènement KeyPress intervient avant que le système envoie le caractère au textbox. C'est dans l'ordre des choses.
Si tu veux agir seulement une fois le texte de ta textbox rafraichi, utilise l'évènement Change à la place de l'évènement KeyPress.
kipich
Messages postés19Date d'inscriptionjeudi 15 avril 2004StatutMembreDernière intervention 9 août 2006 18 juil. 2006 à 11:10
Alors, je viens de trouver, faut en fait bel et bien le faire le test apres, c'est à dire avec KeyUp ou Change mais il faut surtout utiliser Texte1.text.
En effet Texte1.value, comme je le disais, ne se met a jour qu'a la perte du focus meme en utilisant la methode Change ou KeyUp.