Textbox "2" et Entrée [Résolu]

Signaler
Messages postés
82
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010
-
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
-
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

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
Salut,

Voir lien1 et lien2

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
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
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
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

 
Messages postés
82
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010

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.
Messages postés
82
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010

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.
Messages postés
82
Date d'inscription
jeudi 6 juillet 2006
Statut
Membre
Dernière intervention
6 janvier 2010

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 :).
Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
12
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

 
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
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