Evenement keypress en VBE [Résolu]

Signaler
Messages postés
48
Date d'inscription
mardi 28 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2011
-
Messages postés
48
Date d'inscription
mardi 28 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2011
-
Bonjour a tous,

je travaille avec VBE 2005, et je suis confronte a un pb avec l'evenement keypress. Je voudrais interdire l'utilisation des caracteres autres que des chiffres, en faisant un controle sur le code ascii. Mais je n'arrive pas a recuperer le code ascii, et meme, si tout betement je met un msg box dans la sub, rien ne se passe lors de l'execution, comme si il y avait une panne de l'event keypress...

je suis un peu perdu, si quelqu'un veut bien m'aider, voici le bout de code qui ne me renvoie rien...

Private

Sub TextBoxProdQty_KeyPress(
ByVal sender
As
Object,
ByVal e
As System.Windows.Forms.KeyPressEventArgs)
Handles TextBoxProdQty.KeyPressMsgBox(

"ok")

End
Sub

Merci pour votre aide,

Max

6 réponses

Messages postés
2237
Date d'inscription
lundi 29 mai 2006
Statut
Membre
Dernière intervention
29 mai 2008
10
Salut! Avec l'aide (F1) voilà ce que l'on pouvait trouvé, ça m'a pris 5 minutes!



Private



Sub
textbox1_KeyPress(

ByVal
sender

As



Object
,

ByVal
e

As
System.Windows.Forms.KeyPressEventArgs)

Handles
TextBox1.KeyPress


Dim
KeyPress

As



String

KeyPress = e.KeyChar


MsgBox(KeyPress)







End



Sub




 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
68
si simple...
en VB6 on aurait du passer par l'API ToAscii :
http://www.vbfrance.com/codes/KEYCODE-ASCII_33577.aspx

Renfield
Admin CodeS-SourceS- MVP Visual Basic
Messages postés
48
Date d'inscription
mardi 28 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2011

salut !

merci pour ta reponse, elle m'eclaire pas mal, je sais maitenant ou recuperer le code ascii, mais quand je l'utilise, aucune msgbox ne me saute a la gorge lorsque je rentre n'importe quel caractere dans la textbox concernee..

c'est la greve du keypress je crois...
max
Messages postés
2237
Date d'inscription
lundi 29 mai 2006
Statut
Membre
Dernière intervention
29 mai 2008
10
???? Ben je sais pas fais un nouveau projet pour tester avec un textbox1 tu copies le code et tu test! Si ça marche pas je ne sais pas ce que c'est! Chez moi fonctionne très bien! Sinon utilise la synthaxe msgbox de VB.Net!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Messages postés
2237
Date d'inscription
lundi 29 mai 2006
Statut
Membre
Dernière intervention
29 mai 2008
10
El l'occurence ceci:
MessageBox.Show(KeyPress,




"Touche pressée"
, MessageBoxButtons.OK, MessageBoxIcon.Information)

Mais je suis pas sur que cela change grand chose car dans tous les cas ça fonctionne!

 Drikce 06

Si la réponse vous convient: Réponse acceptée. Si la réponse vous convient pas:
Messages postés
48
Date d'inscription
mardi 28 mars 2006
Statut
Membre
Dernière intervention
22 septembre 2011

Ok ca marche maintenant,

j'avais une erreur dans le code (sauvegarde de fichier excel Fileformat:=xlNormal, vb me disait que ca n'existe pas... je sais pas trop quoi faire, bref...) et du coup, ca empecahit le keypress de fonctionner.

tout roule maintenant, j'ai juste rajoute Asc(e.keychar) pour recuperer le code ascii de la touche enfoncee..

merci pour ton aide et ta reactivite, bonne journee,

Maxime