KeyPress et entrée

Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010 - 1 juin 2007 à 18:27
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 1 juin 2007 à 19:26
Bonsoir,
J'ai un petit probléme avec l'événement KeyPress :
Private Sub Textbox_KeyPress(KeyAscii As Integer)
MsgBox KeyAscii
If KeyAscii = 13 Then instructions
End Sub
Et la...lorsque l'on appuye sur la touche entrée :
-
Private Sub Textbox_KeyPress(KeyAscii As Integer)
-
MsgBox KeyAscii                'On obtient bien l'affichage de 13.
-
If KeyAscii = 13 Then instructions           'Cependant la condition est...fausse !
-
End Sub

=>Alors voila,pourquoi KeyAscii étant égale a 13 lorsque l'on presse la touche entrée,la condition
KeyAscii = 13 n'est elle pas vraie ?
Merci d'avance pour vos éclaircissements

4 réponses

cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
1 juin 2007 à 18:30
Salut,

Tu veux faire quoi au juste dans l'évènement KeyPress ?
Pourquoi serai-t-elle fausse du moment que tu presses à chauqe fois "Enter" tu aura toujours un retour de keyascii >> 13
A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010
1 juin 2007 à 18:44
J'ai besoin d'intercepter la pression de la touche entrée,pendant la saisie dans une textbox (non "multiline").
J'ai donc pensé qu'utiliser la variable keyAscii genéré par la procédure Keypress serai une bonne idée.Et cela fonctionne (enfin presque) puisque lors de l'affichage de la variable KeyAscii,il me retourne 13 qui correspond je crois au saut de ligne.
Dans ce cas il devrai m'executer les "instructions"
If KeyAscii = 13 Then instructions 
Mais ce n'est pas le cas,comme si KeyAscii avait une valeur différente de 13...
0
cs_Exploreur Messages postés 4822 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 14
1 juin 2007 à 18:51
Salut,

Si ton textbox n'est pas mutiline, il doit te retourner 13(touche entrée préssée), d'ailleurs qu'il soit multiline ou pas il retourne 13 .

Je viens de faire cela, et ça fonctionne : If KeyAscii = 13 Then MsgBox "toto"

Je ne vois pas bien où est ton problème...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
jmfmarques Messages postés 7668 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 28
1 juin 2007 à 19:26
Bonjour,

Mets tout le code qui se trouve dans Keypress (en faisant un copier-coller, s'il te plait, pas en le recopiant)
Car Exploreur a parfaitement raison.
Il ne peut y avoir que 2 raisons, si çà ne parche pas.
- soit tu as mal frappé KeyAscii
- soit une uonstruction précédente a modifié la valeur de KeyAscii.

On t'attend.
0