Le setfocus ne fonctionne pas... [Résolu]

Signaler
Messages postés
180
Date d'inscription
vendredi 18 janvier 2008
Statut
Membre
Dernière intervention
22 novembre 2013
-
Messages postés
7
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
14 avril 2009
-
Bonjour,

j'ai fait un setfocus sur une textbox, afin que l'utilisateur, lorsqu'il encode puisse rester sur cette textbox et qu'il ne doive pas prendre chaque fois sa souris pour venir se placer dans la textbox...

(donc, il encode dans la textbox, appuye sur 'Enter', cela transfere l'info dans une listbox. la textboxe se vide et il devrait pouvoir continuer à encoder dans cette textbox...

mais mon setfocus ne fonctionne pas, lorsqu'on appuye sur 'enter', le curseur se place sur un boutton de commande qui se trouve sur l'userform...

quelqu'un sait d'ou vient le probleme (parceque le preogramme ne plante pas...)

22 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
65
j'ai pas compris la chose...

quel est l'interet de donner le focus a un controle qui l'a deja ?
Messages postés
7
Date d'inscription
samedi 15 novembre 2003
Statut
Membre
Dernière intervention
14 avril 2009

Toi tu arrives comme un cheveu sur la soupe froide (sans lire ce qui ya avant) et tu t etonnes de rien pigé ...
C comme ca con pollue les tchats. Comme je suis bon prince ... lancons nous

Donc admettons comme lamis
que tu es un textbox ...
que quant ton appli tourne, tu veux saisir un truc dans le text box
que après avoir saisi et fait enter ... tu te rends compte que ton focus se bare ... et tu voulais qu'il reste la ...
il est normal de penser que, a la sortir de l evenement qui lance la procedure de recup du text saisie, il faudrait rajouter  textbox.setfocus

soir ce genre la

 Private Sub TextBox_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
   recup text
 => en sortant on recup le focus.
    textbox.setfocus ... ET c la que le soucis (que pas mal de gens ont) trouve de vagues explications douteuses dans les abimes du programmeur en herbe qui galere depuis trop longtemps
End Sub

seulement meme a la sortir de levenement, c encore textbox qui a le focus. donc le setfocus ne sert a rien.

La solution ... renvoyé le focus au textbox a partir du controle ou il atteri ...

Private Sub (controle ou le focus atteri en fonction des tabindex)_Enter()
    If (sur les conditions qui vont bien) Then
        TextBox.SetFocus
    Enf if
End Sub

Si cette fois c pas clair ... tanpi pour ti
Merci de rien, bonjour bonsoir !!!
Allé Hop circulez, ya rien a voir  ...