cs_Didier72
Messages postés76Date d'inscriptiondimanche 10 octobre 2004StatutMembreDernière intervention13 juin 2015
-
7 juil. 2006 à 10:48
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 2012
-
10 juil. 2006 à 08:57
Bonjour
Pourriez-vous m'aider résoudre mon problème:
J'ai plusieurs zones Text:
Text1.Text - Text2.text -etc
J'aimerai que mon curseur de saisie se mette automatiquement dans la zone Text suivante dés que j'ai saisie 2 caractères dans la Zone précédente.
Exemple: si je tape: 01 dans la première zone Text (Text1.Text), j'aimerai que mon curseur de saisie passe automatiquement dans la 2ème zone Text (Text2.Text) sans que j'ai besoin de cliquer dans cette zone pour effectuer ma saisie manelle.
Aussi: Comment à l'ouverture de ma Form placer mon curseur en auto dans la première zone de saisie Text1.text ?
Me suis-je bien fait comprendre ? pas facile :) :)
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 7 juil. 2006 à 11:16
Sinon Tu peux essayer de faire un Groupe de controle
Et ensuite il te reste juste a faire:
Private Sub Text1_Change(Index As Integer)
If Len(Text1(Index).Text) = 2 Then
If (Index + 1) <= Text1.UBound Then
Call Text1(Index + 1).SetFocus
Else
Call Text1(0).SetFocus
End If
End If
End Sub
<small> Coloration syntaxique automatique [AFCK]</small>
@+, Julien Pensez: Moteur de Recherche, Réponse Acceptée, Règlement/FONT>
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 7 juil. 2006 à 15:09
Salut à tous et à toutes.
Si je puis me permettre de suggerer à Didier72 ma façon de travailler en réponse à sa question.
1° Pour que mon curseur se place à la 1iére zone de text au chargement de la form, j'attribut à la propriété TabIndex de mon contrôl la valeur 0.
Et selon l' ordre que je veux, j' attribus (toujours à la même propriéte) aux contrôles suivants des valeurs successives (1,2,3,...etc).
2° Pour que mon curseur passe d' une zone de saisie à l' autre je place dans la procedure KeyUp (et (non dans Change) la ligne suivante:
If keyCode=vbKeyReturn then SendKeys "{tab}".
Ainsi je ne suis pas limité par le nombre de caractères que je dois saisir,et que je ne passe à la zone suivante que si je valide par enter.
Voilà.J'espère que j' étatis clair.
A+