import javax.swing.JPanel; import javax.swing.JFrame; import javax.swing.JComboBox; import java.awt.event.ItemListener; import java.awt.event.ItemEvent; import java.awt.Dimension; import java.awt.Color; import java.awt.Graphics; import java.awt.BorderLayout; public class BoutonChoix extends JFrame implements ItemListener { JComboBox choix =new JComboBox(); ArdoiseChoix ardoise = new ArdoiseChoix(); public BoutonChoix() { JPanel panneau = new JPanel(); choix.addItem("noir"); choix.addItem("rouge"); choix.addItem("vert"); choix.addItem("bleu"); choix.addItem("jaune"); choix.addItemListener(this); panneau.add(choix); add(panneau, BorderLayout.NORTH); add(ardoise, BorderLayout.CENTER); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); pack(); setLocation(300, 300); setVisible(true); } public void itemStateChanged(ItemEvent evt) { ardoise.setForeground(getCouleur(choix.getSelectedItem())); } Color getCouleur(Object s) { if (s.equals("rouge")) return Color.RED; else if (s.equals("vert")) return Color.GREEN; else if (s.equals("bleu")) return Color.BLUE; else if (s.equals("jaune")) return Color.YELLOW; return Color.BLACK; } } class EssaiBoutonChoix { public static void main(String[] arg) { new BoutonChoix(); } } class ArdoiseChoix extends JPanel { ArdoiseChoix() { setPreferredSize(new Dimension(100, 100)); } public void paintComponent(Graphics g) { super.paintComponent(g); g.fillOval(10,10,80,80); } }