cs_moi4975
Messages postés109Date d'inscriptionlundi 27 juin 2005StatutMembreDernière intervention17 juillet 2007
-
12 mai 2006 à 17:33
anwar666
Messages postés24Date d'inscriptionjeudi 21 février 2008StatutMembreDernière intervention12 juillet 2010
-
9 juil. 2009 à 23:10
Salut à tous,
Voila je voudrais valider mon textBox quand je tape sur "ENTER" au lieu de devoir cliquer sur le bouton rechercher de mon application .... Mais je ne sais pas comment faire !
cs_nico1610
Messages postés395Date d'inscriptionjeudi 26 août 2004StatutMembreDernière intervention19 juin 20091 13 mai 2006 à 01:48
Reprend ce que t'as dit jack a une différance pres : remplace <strike>keypress</strike> par keydown !! et non pas<strike> keyup</strike> (keyup qui est bien du vb6)
En effet : il y exsiste trois commandes :
une qui réagit quand tu arretes de presser la touche (keyup)
une qui réagit quand tu es en train d'appuyer sur la touche (keypress)
une qyu réagit quand tu appuyes sur la touche.(keydown)
Soit dans l'ordre chronologique KeyDown >> KeyPress >> KeyUp
Il faut aussi savoir que le fameux BIP de windows réagit au moment de la commande keypress .
Donc il faut pouvoir détécté la pression de la touche avant windows,
executer son code et enfin faire croire à windows qu'il ne c'est rien
passé soit :
(KeyDown comme ces deux soeur est un evenement qui s'affiche de la même
facon que Form_Load ou même Command1_Click : un double clic sur l
composant TEXTBOX puis dans le menu déroulant en haut a droite tu
séléction [KEYDOWN] )
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 12 mai 2006 à 18:12
Salut
Classique :
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = vbKeyReturn Then
monBouton_Click
' Evite le beep
KeyAscii = 0
End If
End Sub
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 12 mai 2006 à 19:14
... C'est du VB6 ou du .Net (j'en ai marre de poser cette question ....)
JB76000 m'a fait penser à ceci :
Si, dans ta forme, un des boutons Command a la propriété Default à True, l'évènement TextBox_KeyPress ne se déclenche pas.
Si la forme elle même a la propriété KeyPreview a True, elle verra le KeyPress avant les autres composants.
--> Lire l'aide de VB, tout y est expliqué
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 13 mai 2006 à 04:43
lol, si j'ai raison et, Nico, en VB6, "KeyCode = 0" ne fonctionne pas ! Il génère quand même le beep.
La fonctionnalité de détection du vbKeyReturn dans le KeyPress fonctionne, c'est garanti.
Le KeyAscii = 0 pour éviter le Beep fonctionne, c'est garanti aussi
Franchement, je ne vois pas où est le problème ...
Pour en revenir aux KeyDown et KeyUp :
Ces évènements renvoient un KeyCode, pas un KeyAscii : La grosse différence est que KeyCode renvoie la touche (matérielle) clavier pressée.
Avantage : Elles voient toutes les touches de fonction.
Inconvénient 1 : si on appuie sur "a", le KeyCode renvoie de code ascii de "A" (et pas "a")
Inconvénient 2 : Un "KeyCode = 0" ne fonctionne pas et génère un Beep
Le KeyPress est donc plus indiqué, mais vous faites bien comme vous le voulez ...
Vala
Jack, MVP VB
Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accro
cs_moi4975
Messages postés109Date d'inscriptionlundi 27 juin 2005StatutMembreDernière intervention17 juillet 2007 13 mai 2006 à 19:25
Merci à tout les deux mais après avoir essayer toute vos idées c'est finalement le KeyPress qui fonctionne le mieux (sans Beep) le keydown marche aussi mais j'ai toujours un Beep
anwar666
Messages postés24Date d'inscriptionjeudi 21 février 2008StatutMembreDernière intervention12 juillet 2010 9 juil. 2009 à 23:10
salut !!
j'ai besoin du code de l'événement enter qui effectue la recherche sur un textbox sans cliqué sur un bouton en vb.net 2008 !!!
et merci d'avance !!
cordialement !!