Textbox "2" et Entrée

Résolu
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010 - 29 août 2007 à 21:01
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 - 2 sept. 2007 à 14:40
Bonjour a tous,
J'utilise la textbox du groupe de controls "Microsoft Forms 2.0 Object Library" pour sa propriété backstyle.
Seulement je souhaiterai valider la saisie par la touche Entrée (Code ASCII 13),or l'événement keypress  n'est pas "déclanché" lorsque l'on appuie sur Entrée alors qu'il l'est dans une textbox "normale".

Private Sub cmd_KeyPress(KeyAscii As MSForms.ReturnInteger)
MsgBox KeyAscii
Rem If KeyAscii = 13 Then Valider_Click
End Sub
=> Pression sur Entrée : Rien ne se passe

Private Sub Ecran_KeyPress(KeyAscii As Integer)
MsgBox KeyAscii
End Sub
=> Pression sur Entrée : Ca marche,"13" s'affiche dans une boite de dialogue

Auriez vous une explication ou une autre solution ?
Merci d'avance de votre aide :) .

8 réponses

cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
29 août 2007 à 22:05
Salut,

Voir lien1 et lien2

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
29 août 2007 à 21:18
C'est dommage, il semblerait effectivement que la touche Enter ne déclenche jamais le keypress avec ce textbox.

L'autre soucis avec les controles Forms 2.0 c'est leur restriction de distribution.

A la base, la license d'utilisation des ces controle n'autorise aucune distribution que celle de la suite Office. En effet Microsoft Forms2.0 est en réalité un composant interne de la suite Office et ne peut légalement etre installé que leur d'une installation de la suite Office.

Ce qui veut dire que ton logiciel ne devrait normalement pas contenir ce controle dans son pack d'installation. Ce qui signifie donc (si tu respecte la licence) que ton logiciel ne fonctionnera que sur des machines ou la suite Office a été préalablement installée.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
29 août 2007 à 21:19
Salut,

Je n'aie pas la réponse à ton problème mais j'ai peut-être une autre solution :

Utilise un TextBox standard, dans le Form_Load de la feuille où il se trouve met cela comme code :

Text1.BackColor = Form1.BackColor

Tu auras le même rendu qu'avec un TextBox de Microsoft Forms 2.0 Object Library....

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
29 août 2007 à 21:51
Merci Exploreur mais si je me casse la tête avec ce control c'est parceque ma la "couleur" de fond de ma forme n'est autre qu'un dégradé.

"A la base, la license d'utilisation des ces controle n'autorise aucune distribution que celle de la suite Office. En effet Microsoft Forms2.0 est en réalité un composant interne de la suite Office et ne peut légalement etre installé que leur d'une installation de la suite Office.

Ce qui veut dire que ton logiciel ne devrait normalement pas contenir ce controle dans son pack d'installation. Ce qui signifie donc (si tu respecte la licence) que ton logiciel ne fonctionnera que sur des machines ou la suite Office a été préalablement installée."

Ca c'est deja plus embétant  mais en ce qui concérne la distribution on verra ca plus tard.

Connaissez vous un autre control textbox qui puisse étre rendu transparent ?
Existe t-il dans le cas contraire un script le permettant ?
En tout cas merci de vos réponses.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010
29 août 2007 à 22:12
Merci beaucoup pour le 1er lien,
Ca régle a la fois le probléme de licence et celui de la listbox qui ne posséde pas cette propriété ^^.
D'habitude j'aime que mes sources soit de moi et moi seulement mais on fera une exeption.
Bonne continuation a vous et ce site ou l'on trouve décidément vraiment tout.
0
Vianneyp Messages postés 82 Date d'inscription jeudi 6 juillet 2006 Statut Membre Dernière intervention 6 janvier 2010
30 août 2007 à 12:51
Je me permet de "retiré ta réponse accépté" explorer (temporairement),pour attirez votre attenton sur une découverte hasardeuse que je vient de faire :
Placer cette fameuse textbox "2" sur une form et essayer dedéclancher l'evénement Keypress avec la touche Entrée (comme expliqué ci dessus).
Rien,nada.
Maintenant essayés avec MAJ + Entrée -.-'
Le plus "frustrant" c'est que la valeur retournée est bien 13 !
Je ne suis pas sur de tout comprendre mais enfin bon :).
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
30 août 2007 à 16:16
Re,

Effectivement c'est bizarre....De plus quand tu passes en multilignes sur True cela ne fonctionne plus.....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
2 sept. 2007 à 14:40
As-tu essayé d'utiliser KeyDown ou KeyUp plutôt que KeyPress ?
Avec ces 2 événements, tu peux aussi vérifier si une touche comme Alt, Ctrl ou Shift a été pressée.

MPi
0
Rejoignez-nous