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

Langage Java Discussion :

boucle pour créer des checkbox


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut boucle pour créer des checkbox
    Bonjour,

    Afin de n'aborder que certain chapitre dans un questionnaire, je souhaiterai récupérer les thème du questionnaire ( ça j y arrive) et ensuite proposer des checkbox qui permette à l'utilisateur de choisir ou non certain thème(ça j y arrive pas), ensuite à partir des thème cocher, je recupererai les question à l'aide d'une simple requete sql.

    Mon problème est que je n'arrive pas à différencier les checkbox dans ma boucle, en cherchant , je suis tomber sur : http://www.developpez.net/forums/d49...eckbox-boucle/

    mais je n'ai pas reussi .. :s

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    L'idée donnée dans l'autre sujet est d'enregistrer les objets dans une liste, Tu peux aussi le faire dans une Map, par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    String[] themes = questionnaire.getThemes();
    Map<String, JCheckBox>boxes = new Hashmap<String, JCheckBox>();
     
    for(String theme : themes) {
        // chaque checkbox est référencé par le nom de la catégorie par exemple
        boxes.put(theme, new JCheckBox());
        ...
    }
    C'est plus clair ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut
    Merci pour ta réponse rapide,

    Donc du coup, pour faire ma requete SQL et récupéré mes question dont les thème on été abordé, je n'aurai qu'a parcourir ma Map et récupéré les string pour faire ma requete SQL ?

    ah si petite question pourquoi faut il faire : Map<String, JCheckBox>boxes = new Hashmap<String, JCheckBox>();

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut
    En fait y a quelque chose que je comprend toujours pas ( désolé :s)
    lorsque je vais avoir ma collection de JcheckBox, comment vais je pouvoir les instancier avec des nom différents? je revien au même problème que tout à l'heure?

  5. #5
    Invité
    Invité(e)
    Par défaut
    Comme je les ai stockés dans une map, chaque checkbox est associée à un nom, celui du thème dans mon exemple, mais tu peux associer le nom que tu souhaites.
    Ici j'ai tout fait en local, mais c'est pour donner une idée du principe, ta Map peut être un attribut de la classe si tu en as besoin dans plusieurs méthodes. C'était vraiment juste pour te montrer comment instancier avec plusieurs noms dans une boucle.
    Cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    boxes.put(theme, new JCheckBox());
    instancie une nouvelle checkbox qui a le nom theme

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut
    ouai j'ai presque réussi, mais j'ai un pb :


    ici je recupère mes chapitres et j'instancie en même temps mes JcheckBox
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    while( rs.next() )
                      {
                    	boxes.put(rs.getString( "chapitre" ),new JCheckBox());
     
                      }

    Et ici je parcour ma map pour ajouter une à une les checkbox à mon container .
    Si je ne les nomme pas, j'ai pas de probleme j'ai bien le nombre attendu de checkbox correspond à mes chapitre, sauf qu'elle n'ont pas de nom, du coup je voudrai essayer de les nommer avant de les ajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     it = boxes.keySet().iterator(); 
                  while (it.hasNext())
                  {
                	  boxes.get(it.next()).setName((String)boxes.get(key));
                      co.add(boxes.get(it.next()));
                  }
    pour cela je voudrai récupére la clef qui est de type string, mais ça ne marche pas :s

    En tout cas j'ai avancé^^ merci à toi

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

Discussions similaires

  1. [XL-2003] Boucle pour créer de nouveaux classeurs et y importer des données
    Par Isabelle86 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/12/2010, 09h20
  2. [XL-2007] Créer une boucle pour copie des tableaux de plusieurs feuilles sur une seule
    Par rvtoulon dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 22/09/2009, 17h12
  3. Réponses: 21
    Dernier message: 23/05/2007, 16h16
  4. [CR] Version nécessaire pour créer des fichiers DSR ?
    Par aysse dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 17/11/2003, 09h01
  5. quel langage pour créer des "applications" sur 1 s
    Par jaribu dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 30/07/2003, 14h06

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