IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Discussion :

Gestion des CheckBox dans Visual Studio


Sujet :

VBA

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Points : 83
    Points
    83
    Par défaut Gestion des CheckBox dans Visual Studio
    Bonjour,

    Je voudrais initialiser plusieurs CheckBox à True et j'utilisais la syntaxe suivante dans Vba sous Excel qui fonctionne très bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For k = 1 to 32
        Me.Controls("CheckBox" & k).Value = True
    Next
    Dans Visual Studio (que je découvre et dont je n'ai pas l'aide) j'ai une erreur : "'Value' n'est pas un membre de 'System.Windows.Forms.Control'

    J'ai donc modifié mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Dim b As Control
    For Each b In GroupBox1.Controls
     
        If b.Name.Contains("CheckBox") = True Then
        b.Checked = True  'C'est là que ça ne marche pas
        End If
     
    Next
    mais je n'arrive toujours pas à cocher ces CheckBox, pouvez-vous m'aider ?

    PS : mon message est peut être mal placé mais je ne vois pas où le mettre

  2. #2
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Pourquoi les mettre dans un groupBox ???

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Points : 83
    Points
    83
    Par défaut
    Le groupebox n'a pas d'importance, si il n'était pas là cela ne changerait rien à mon problème (à moins que tu penses à autre chose ?).
    Le fait de mettre les Chekbox dans un groupebox est plus sympa au niveau organisation dans mon panneau, il y a d'autres boutons et champs texte.
    De plus la boucle de test ne se fait que pour les composants du groupebox alors que sinon tous les composants du panneau subiraient le test.


    Personne n'a une idée ? Je bloque là-dessus et ça me freine pour la suite de mon développement.

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    pourtant, ce code fonctionne très bien chez moi ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
      Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            CheckBox1.Checked = True
            CheckBox2.Checked = True
        End Sub

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Points : 83
    Points
    83
    Par défaut
    Oui, en effet, pour cocher un à un chaque checkbox cela fonctionne, mais comme j'en ai 32 sur mon panneau (il s'agit de voies de mesure) et j'ai un autre panneau avec 99 checkbox (points de mesure) je veux faire cela dans une boucle et traiter le checkbox en cours (voir mon premier message).

    Comme je le disais, sous vba/Excel, ceci fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For k = 1 to 32
    Me.Controls("CheckBox" & k).Value = True
    Next

    mais pas sous Visual Studio !!

  6. #6
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    travaille alors en objet ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim o As Object
            For Each o In Me.Controls
                If o.GetType.Name = "CheckBox" Then
                    o.checked = True
                End If
            Next
        End Sub

  7. #7
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Points : 83
    Points
    83
    Par défaut
    Merci Maxence, je vais tester cela dès demain matin.

  8. #8
    Membre régulier
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 206
    Points : 83
    Points
    83
    Par défaut
    Parfait, cela fonctionne sauf que j'ai un petit soucis :

    la boucle balaie bien tous les CheckBox que j'ai dans mon GroupBox mais en commençant par les noms de poids forts (CheckBow32 puis CheckBox31 ...) ce qui m'oblige à une gymnastique biscornue et peu orthodoxe pour aller relire par la suite les CheckBox qui ont été modifiés par l'utilisateur lorsqu'il ferme le panneau.

    N'y aurait-il pas un moyen de forcer le contrôle en commençant pas les CheckBox de poids faible (j'ai essayé de manipuler les TabIndex mais sans succes).

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [TeamCity] Utilisation des artefacts dans Visual studio
    Par elpaulo dans le forum Intégration Continue
    Réponses: 2
    Dernier message: 13/05/2015, 12h14
  2. [Débutant] Utiliser des ressources dans Visual studio express 2010 c++
    Par Brontozor dans le forum Visual Studio
    Réponses: 1
    Dernier message: 06/03/2013, 21h17
  3. Réponses: 2
    Dernier message: 20/07/2011, 14h33
  4. Réponses: 1
    Dernier message: 21/06/2011, 12h01
  5. Gestion des Slots dans Visual Studio
    Par Geoffroy123 dans le forum Qt
    Réponses: 4
    Dernier message: 11/06/2010, 13h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo