Souci de setfocus dans une ssTab [Résolu]

Signaler
Messages postés
315
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
22 décembre 2014
-
jytest
Messages postés
315
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
22 décembre 2014
-
Bonsoir à tous.

Me voici avec un problème. Pourriez-vous, svp, y jeter un oeil ?

Voici une description :
Dans une feuille, j'ai un ssTab.
Ce ssTab contient plusieurs onglets, contenant chacun une picturebox (pct(index)).
Chaque picturebox contient une comboBox (cboIdentite(index))
et plusieurs textbox (nom(index) et prenom(index)).
Vous l'aurez compris... cboIdentite(0) va avec txtnom(0) et txtprenom(0) dans pct(0)...
Les index vont de pair avec l'index de chaque onglet de la ssTab.

Voici maintenant mon souci :
quand j'effectue un txtprenom_LostFocus(index as integer), qui lui même,
après un test de validité non exact, veut renvoyer sur le focus
sur cboIdentite(0)... cela ne fonctionne pas... le focus est refusé...
par un message d'erreur !




jyd

6 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
63
Pour qu'un composant acquiert le focus, il faut qu'il soit visible.
Entre la manip de l'onglet et le setfocus de la TextBox, ajoute un DoEvents, ça devrait suffire.
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
63
Salut

Et, quel est ce mystérieux et secret message d'erreur ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
63
Pendant que tu y es, mets nous l'instruction incriminée, on gagnera du temps.
Messages postés
315
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
22 décembre 2014

Voilà ce test :

Private Sub cmdClientValider_Click()
If (txtNom(0) & txtPrenom) = "" Then
For j = 0 To 4
lblMessageClient(j).Visible = True
linErreurClient00(j).Visible = True
Next j
'
'
' Pour la validation,
' Vu que la fiche ne contient ni nom ni prénom,
' je souhaite que le focus revienne directement
' dans l'onglet 0 de la ssTab (ssTabClient),
' dans la zone du nom (txtNom(0))
' Cela ne fonctionne pourtant pas !!!
' Pas de message d'erreur...
' Mais pas de focus sur le nom
' pourtant en visible, en enabled et pas en Loocked !!!
'
'
SSTabClient.Tab = 0
txtnom(0).SetFocus
Exit Sub
End If
...
end sub

jyd
Messages postés
315
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
22 décembre 2014

Je rajoute aussi que le message d'erreur était dû à un ssTab avec enabled à False.
C'est retrouvé, c'est vu, c'est corrigé, donc plus de message d'erreur.
Mais
Je n'ai toujours pas le focus sur txtnom(0) !!!!!!!!!!!!!!!!!!!!!!!



jyd
Messages postés
315
Date d'inscription
dimanche 27 novembre 2005
Statut
Membre
Dernière intervention
22 décembre 2014

Merci de ton aide très précieuse.
Ceci va me permettre de solutionner bien des soucis.
Merci

jyd