Controle simple ou groupe ???

Résolu
cs_andrebernard Messages postés 404 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 4 septembre 2013 - 11 sept. 2007 à 15:12
cs_andrebernard Messages postés 404 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 4 septembre 2013 - 11 sept. 2007 à 16:40
Bonjour à tous

Comment faire pour savoir si j'ai affaire a un groupe de controle ou bien un controle seul ?
Car dans le code suivant, ça plante, quand la boucle tombe sur un controle sans index.

Dim Ctrl As Control
 
 For Each Ctrl In Me.Controls
 
   Print #10, Ctrl.Index
   Print #10, Ctrl.Name
   Print #10, Ctrl.Left
  
 Next

Merci de votre aide
Bonne journée

10 réponses

cs_andrebernard Messages postés 404 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 4 septembre 2013 1
11 sept. 2007 à 16:16
Peut etre la solution la plus simple serait de les mettre tous en groupe, meme si y'a qu'un bouton, un shape.
Est ce que cela a une consequence de creer un groupe de controle dans lequel il n'y a qu'un seul element ???
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
11 sept. 2007 à 15:29
Salut,
Tu peux toujours ignorer l'erreur

Dim Ctrl As Control

For Each Ctrl In Me.Controls
   On Error Resume Next
       Print #10, Ctrl.Index
   On Error GoTo 0
   Print #10, Ctrl.Name
   Print #10, Ctrl.Left
Next, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
11 sept. 2007 à 15:29
Salut,

Ben gére l'erreur dans ce cas....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
11 sept. 2007 à 15:31
Jrivet (salut) >> Arffff....6 secondes dans la vu, et en plus en tapant le code....

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0

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

Posez votre question
cs_andrebernard Messages postés 404 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 4 septembre 2013 1
11 sept. 2007 à 15:31
Merci de vos réponses.
Mais il n'y a aucun moyen de savoir quel type de controle c'est, sans avoir a gerer l'erreur ?
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
11 sept. 2007 à 15:42
Salut,

Si, en prenant bien soin de nommées justement tes contrôles...

Exemple parmis tant d'autres :

Label >> Lbl_Toto
TextBox >> Txt_Toto

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
11 sept. 2007 à 15:45
Re,

Ou alors tu peux faire ce genre de boucle :

          
          Dim Ctrl As Control
         
          For Each Ctrl In MyForm
                 If TypeOf Ctrl Is Label Then ' Si c'est un label, continu
                     MsgBox Ctrl.Name 
                 End If
             Next Ctrl

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
cs_andrebernard Messages postés 404 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 4 septembre 2013 1
11 sept. 2007 à 16:12
J'suis damné ....
Parce qu'en plus j'ai un bouton qui est seul et un groupe de bouton sur la meme FORM
C'est ça qui me créé l'erreur
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
11 sept. 2007 à 16:19
Tous les contrôles peuvent avoir un Index même s'ils sont seuls dans leur groupe.

MPi
0
cs_andrebernard Messages postés 404 Date d'inscription lundi 9 juin 2003 Statut Membre Dernière intervention 4 septembre 2013 1
11 sept. 2007 à 16:40
Bon bah, je vous remercie.
Je vais adopter cette solution.
J'ai transformé tous les controles de ma form en groupes, qu'il y ai 1 ou plusieurs controles.
Apres ça, l'appel controle.index ne plante evidement plus.
C'est une demi solution, mais elle marche.

Encore merci de votre aide
0
Rejoignez-nous