Partage
  • Partager sur Facebook
  • Partager sur Twitter

JComboBox dans une JComboBox

    9 janvier 2010 à 17:59:52

    Bonjour,
    Voila j'ai un petit souci, je souhaite mettre une JComboBox dans une autre JComboBox:
    Dans une Jcombobox nommé "Couleur" je voudrais avoir deux autre Jcombobox "figures" et "fond"

    code "fond": final JComboBox fond = new JComboBox (new String[]"default","vert","jaune","rouge","bleu","noir","blanc"});
    code "couleur": final JComboBox couleur = new JComboBox (new String[] {"Rouge","Vert","Bleu","Jaune"});

    Quel seraait alors le code pour la fameuse jcombobox "Couleur"?
    (J'ai cherché sur le net mais aucun résultat)

    Merci
    • Partager sur Facebook
    • Partager sur Twitter
      9 janvier 2010 à 18:07:59

      Heum si je comprends bien ce que tu veux faire, c'est avoir un effet dans le style menu démarrer/tous les programmes de windows xp? Avec des boites qui s'ouvrent sur le coté de ton JComboBox?

      Dans ce genre là:

      Image utilisateur
      • Partager sur Facebook
      • Partager sur Twitter
        9 janvier 2010 à 18:14:33

        En effet c'est cela.
        Mais le problème est que je ne sais pas si c'est faisable dans une JComboBox. (Dans un JMenuBar je pense que oui, mais ce n'est pas ce que je cherche)
        (Je précise que c'est pour une application de type paint)
        • Partager sur Facebook
        • Partager sur Twitter
          9 janvier 2010 à 18:23:47

          Non en effet, si tu ajoute des composant à la place de string, JComboBox les transforme en String d'office. Tu as trois possibilités: utiliser JMenu qui permet de faire quelque chose du genre, chercher un autre composant qui serait bon ou alors, créer ton propre composant.

          Rien ne t'empêche de créer une classe JComboMulti par exemple et de gérer toi même son fonctionnement, grâce à des listeners entre autres. Mais c'est pas un petit boulot pour le faire correctement.

          Sinon, tu peux mettre tes jcombobox l'un a côté de l'autre et actualiser l'affichage de ceux qui suivent lors d'un choix ans le premier, puis dans le second,...
          • Partager sur Facebook
          • Partager sur Twitter
            9 janvier 2010 à 18:38:21

            Merci de tes réponse, je vais essayer de voir ce que ça donne avec la première possibilité, sinon tampis je laisserais les jcombobox côte à côte.

            Bonne soirée
            • Partager sur Facebook
            • Partager sur Twitter
              9 janvier 2010 à 18:43:47

              Le Jmenu devrait te donner un bon résultat ;)
              • Partager sur Facebook
              • Partager sur Twitter
                9 janvier 2010 à 18:57:34

                import javax.swing.JCheckBoxMenuItem;
                import javax.swing.JMenu;
                import javax.swing.JMenuBar;
                import javax.swing.JMenuItem;
                import javax.swing.JPanel;
                import javax.swing.JRadioButtonMenuItem;
                
                public class menu extends JPanel{
                	
                	JMenuBar menuBar;
                	JMenu menu, submenu1, submenu2, submenu3, submenu11, submenu12, submenu13, submenu21, submenu22;
                	JMenuItem menuItem111, menuItem112, menuItem211, menuItem212, menuItem311, menuItem312;
                	JRadioButtonMenuItem rbMenuItem;
                	JCheckBoxMenuItem cbMenuItem;
                	
                	public menu(){
                	menuBar = new JMenuBar();
                	menu = new JMenu("Menu");
                
                	submenu1 = new JMenu("1");
                		submenu11= new JMenu("11");
                		submenu1.add(submenu11);
                			submenu11.add(new JMenuItem("111"));
                			submenu11.add(new JMenuItem("112"));
                			submenu11.add(new JMenuItem("113"));
                		submenu12= new JMenu("12");
                		submenu1.add(submenu12);
                			submenu12.add(new JMenuItem("121"));
                			submenu12.add(new JMenuItem("122"));
                			submenu12.add(new JMenuItem("123"));
                		submenu13= new JMenu("13");
                		submenu1.add(submenu13);
                		submenu13.add(new JMenuItem("131"));
                		submenu13.add(new JMenuItem("132"));
                		submenu13.add(new JMenuItem("133"));
                		
                	submenu2 = new JMenu("2");
                		submenu21= new JMenu("21");
                		submenu2.add(submenu21);
                			submenu21.add(new JMenuItem("211"));
                			submenu21.add(new JMenuItem("212"));
                			submenu21.add(new JMenuItem("213"));
                		submenu22= new JMenu("22");
                		submenu2.add(submenu22);
                			submenu22.add(new JMenuItem("221"));
                			submenu22.add(new JMenuItem("222"));
                			submenu22.add(new JMenuItem("223"));
                
                
                	menu.add(submenu1);
                	menu.add(submenu2);
                	menuBar.add(menu);
                
                	this.add(menuBar);
                	}
                
                }
                


                Voilà un exemple de Jmenu. Tu peux l'ajouter à un bête Jpanel vide. Il y a moyen de le simplifier mais ça c'est ton boulot.
                • Partager sur Facebook
                • Partager sur Twitter
                  10 février 2010 à 1:56:02

                  Bonsoir ,j'ai une jcombobox avec les différents langues et je voudrais changer l langue des interface ,mais j n'y arrive pas ;(
                  merci d'avance .
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 février 2010 à 9:24:18

                    Crée un nouveau sujet.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    JComboBox dans une JComboBox

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown