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

Windows Forms Discussion :

[C#] Comment changer tous les btn d un coup [Débutant(e)]


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 24
    Points : 13
    Points
    13
    Par défaut [C#] Comment changer tous les btn d un coup
    Bonjour

    j ai une Form, dedans je peux avoir x boutons

    comment dans le Load de la form faire une boucle qui
    me change la couleur de tous les boutons (qui les passent en vert par ex)

    merci

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    114
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 114
    Points : 71
    Points
    71
    Par défaut
    Dans le load, tu fais :

    Nomdubouton.color = "couleur"
    S'il n'y a que les imbéciles qui ne changent pas d'avis, mes clients sont des génies.

    Aet, Ukyuu.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Nomdubouton.color = "couleur"
    oui, ca ok

    mais si j ai 15 btn vais devoir le faire pour les 15, si je renomme 1 btn, vais devoir modifier le code

    ce que je voudrais, c est une boucle qui a l ouverture de la fenetre, passe tous les btn en revue et leur change la couleur, et ce quelque soit le nom du btn

    merci

  4. #4
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    En utilisant la colections Controls de ta form, tu peux récupérer la liste de ton les controls.

    Ensuite, avec le réflexion, tu pourras fire ta boucle.

    Genre (pseudo-code)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    pour chaque control dans Controls
    {
           si control == bouton
           {
                 alors couleur bouton = "couleur"
            }
    }

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    pour chaque control dans Controls
    {
           si control == bouton
           {
                 alors couleur bouton = "couleur"
            }
    }
    merci mais si tu pouvais m aider un peu plus car je ne connais pas encore la syntaxe de tout, je débutes vraiement en C#

    un petit exemple svp

    merci

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 29
    Points : 29
    Points
    29
    Par défaut
    Voici un lien sur un topic qui se trouve juste quelques lignes en dessous du tien.
    Tu pourras sans doute y puiser des idées


    http://www.developpez.net/forums/vie...437f816418e333

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Merci je viens de lire, ca m a un peu (un peu) aidé

    je fais donc ca

    int n = Controls.Count;

    while ( n > 0)
    {
    n--;
    MessageBox.Show(Controls[n].Name , "MyApp", MessageBoxButtons.OK, MessageBoxIcon.Stop);

    }

    mais ca ne m affiche que les controls de 1er niveau

    cad, dans ma form, j ai des panels, dans lesquels il peut y avoir d autres panels ou des btns

    en fait ce que je souhaite faire, c est que ca scanne tous les controles dans la form, meme si ils sont dans d autres controles

    merci de m aider

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 92
    Points : 114
    Points
    114
    Par défaut
    Pourquoi ne fais tu pas une fontion récursive sur la collection Controls (que chaque controle possède)?
    Pour chaque controle rencontré tu testes s'il est de type Button, et le tour est joué

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 24
    Points : 13
    Points
    13
    Par défaut
    Rien a faire je n y arrives pas

    je fais ca et la compil ne passe pas
    MyXpButton, ce sont des bouton que j ai récupérés sur le net


    int n = panel1.Controls.Count;

    while ( n > 0)
    {
    n--;
    if (panel1.Controls[n].GetType() = MyXPButton)
    MessageBox.Show(panel1.Controls[n].Name , "MyApp", MessageBoxButtons.OK, MessageBoxIcon.Stop);

    }

Discussions similaires

  1. Réponses: 5
    Dernier message: 07/09/2005, 08h27
  2. Réponses: 4
    Dernier message: 24/09/2004, 10h17
  3. [String] comment virer tous les espaces vides ?
    Par Alec6 dans le forum Langage
    Réponses: 6
    Dernier message: 26/07/2004, 14h27
  4. [Tomcat] Comment supprimer tous les logs ?
    Par Soulsurfer dans le forum Tomcat et TomEE
    Réponses: 8
    Dernier message: 11/05/2004, 16h35
  5. Réponses: 4
    Dernier message: 16/08/2003, 13h21

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