Bouton associé à des JComoboBox
Hors ligneJereminsa Le 13/11/2010 à 13:41 Profil de Jereminsa Configuration de Jereminsa

 

Tout d'abord, bonjour à tous et à toutes

 

Dans le cadre d'un projet informatique à l'INSA de Rouen, j'ai pour but de créer un quiz, sous la forme du jeu "tout le monde veut prendre sa place" pour ceux qui connaissent. J'ai décidé de le faire en java puisque c'est ce langage de programmation dans lequel je suis le plus à l'aise.

 

Mais je veux permettre à l'utilisateur de créer un avatar qui pourra être à son image. Pour cela, j'ai crée 5 objets JComboBox qui détermineront :                                                  _sexe (homme / femme)

                                     _couleur de peau (blanc / café / noir)

                                     _couleur des cheveux (brun / châtain / blond /roux)

                                     _couleur du haut (bleu / vert / jaune / rouge)

                                     _couleur du bas (bleu / gris / noir)

 

J'ai ensuite placé un bouton OK en dessous de ces JComboBox.

Tous les éléments de la fenêtre sont dans une grille de positionnement que j'ai crée.

Pour ce qui est de la création de ces JComboBox, il n'y a pas de problème. Mais je souhaiterais qu'après avoir sélectionné les caractéristiques des JComboBox, et après l'appui sur le bouton OK, que l'image correspondante aux caractéristiques se charge dans la même fenêtre dans l'emplacement du JLabel imagejpg. Il faut savoir que j'ai déjà crée l'ensemble des images (288).

 

Par exemple, si l'utilisateur choisit un homme blanc, brun, avec un haut jaune et un pantalon bleu, l'image correspondante sera H1C1CH1H1B1.jpg

Vous comprendrez ces notations en regardant le code.

 

Après bon nombre de recherches, j'ai vu que les outils imageIcon et setSelectedIndex pouvaient m'aider mais je n'arrive pas à les utiliser convenablement et à les adapter à ma situation.

                                                                           

Voici la partie de mon code en rapport avec mes interrogations :

 

class info extends JPanel      

            {

 

            (autres éléments sans rapport avec le sujet)

 

                    private String S1 = "Masculin";

                        private String S2 = "Feminin";

                        private String [] MF = {"Sexe",S1,S2};

                        private JComboBox sexe = new JComboBox (MF);

                                   

                        private String C1 = "Blanc";

                        private String C2 = "Cafe";

                        private String C3 = "Noir";

                        private String [] BCN = {"Couleur de la peau",C1,C2,C3};

                        private JComboBox couleur = new JComboBox (BCN);

                                   

                        private String CH1 = "Brun";

                        private String CH2 = "Chatain";

                        private String CH3 = "Blond";

                        private String CH4 = "Roux";

                        private String [] BrCBlR = {"Couleur des cheveux",CH1,CH2,CH3,CH4};

                        private JComboBox cheveux = new JComboBox (BrCBlR);

                                   

                        private String H1 = "Bleu";

                        private String H2 = "Vert";

                        private String H3 = "Jaune";

                        private String H4 = "Rouge";

                        private String [] BVJR = {"Couleur du haut",H1,H2,H3,H4};

                        private JComboBox haut = new JComboBox (BVJR);                       

                                   

                        private String B1 = "Bleu";           

                        private String B2 = "Gris";           

                        private String B3 = "Noir";           

                        private String [] BGN = {"Couleur du pantalon",B1,B2,B3};

                        private JComboBox bas = new JComboBox (BGN);

                       

                        private JButton OK = new JButton ("OK");

                       

                        public JLabel imagejpg = new JLabel("");

           

            public info()

                                                {

                                                            add(sexe);

                                                            add(couleur);

                                                            add(cheveux);

                                                            add(haut);

                                                            add(bas);

                                                            OK.addActionListener(new EcouteurOK());

                                                            add(OK);

                                                                add(imagejpg);

                                            }

                       

                        class EcouteurOK implements ActionListener

                                                {

                                                public void actionPerformed(ActionEvent evt)                                               

                                                 {}

                                                }

 

 

En espérant que quelqu'un puisse me venir en aide

Bonne journée

Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels