Problem Listener JComboBox
Fermé
zem_moh
Messages postés
10
Date d'inscription
mardi 26 juillet 2005
Statut
Membre
Dernière intervention
18 janvier 2010
-
14 oct. 2009 à 15:46
zem_moh Messages postés 10 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 18 janvier 2010 - 14 oct. 2009 à 21:07
zem_moh Messages postés 10 Date d'inscription mardi 26 juillet 2005 Statut Membre Dernière intervention 18 janvier 2010 - 14 oct. 2009 à 21:07
A voir également:
- Problem Listener JComboBox
- Échec du démarrage de la session « cloud files diagnostic event listener » avec l’erreur suivante : 0xc0000022 - Forum Logiciels
- Listener - Forum Logiciels
- Msg erreur et blue screen sur acer nitro - Windows 11
- Listener des JtextField ✓ - Forum Programmation
- JCombobox et JCheckBox dans un JTable - Forum Java
2 réponses
nabil07
Messages postés
140
Date d'inscription
vendredi 14 septembre 2007
Statut
Membre
Dernière intervention
10 avril 2014
64
14 oct. 2009 à 17:31
14 oct. 2009 à 17:31
Bonjour,
tu veux juste afficher le nom de la couleur dans comb1 lorsque tu cliques sur ton choix dans comb2, et sans appliquer la couleur sur l'objet Ardoise. :(
benh, voici se bout de code, tu peux l'essayer et compare ton travail avec le mien
tu veux juste afficher le nom de la couleur dans comb1 lorsque tu cliques sur ton choix dans comb2, et sans appliquer la couleur sur l'objet Ardoise. :(
benh, voici se bout de code, tu peux l'essayer et compare ton travail avec le mien
import javax.swing.*; import java.awt.*; import java.awt.event.*; class EssaiChoix extends JPanel implements ItemListener { JComboBox combo1 = new JComboBox(); JComboBox combo2 = new JComboBox(); Ardoise ardoise = new Ardoise(); EssaiChoix() { JPanel panneau = new JPanel(); combo1.addItem("noir"); combo1.addItem("rouge"); combo1.addItem("vert"); combo1.addItem("bleu"); combo1.addItem("jaune"); combo1.setToolTipText("combo1"); combo2.addItem("1"); combo2.addItem("2"); combo2.addItem("3"); combo2.addItem("4"); combo2.addItem("5"); combo2.setToolTipText("combo2"); panneau.add(combo1); panneau.add(combo2); combo1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { ardoise.setForeground(getCouleur((String) combo1 .getSelectedItem())); } }); combo2.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { combo1.setSelectedIndex(combo2.getSelectedIndex()); } }); setLayout(new BorderLayout(5, 5)); add(panneau, BorderLayout.NORTH); add(panneau, BorderLayout.EAST); add(ardoise, BorderLayout.CENTER); } public void itemStateChanged(ItemEvent evt) { ardoise.setForeground(getCouleur((String) combo1.getSelectedItem())); } Color getCouleur(String s) { if (s.equals("noir")) return Color.black; else 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; } public static void main(String[] argv) { JFrame monCadre = new JFrame(); monCadre.setTitle("Ardoise"); monCadre.setContentPane(new EssaiChoix()); monCadre.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); monCadre.pack(); monCadre.setVisible(true); } } class Ardoise extends JPanel { Ardoise() { setPreferredSize(new Dimension(100, 100)); } public void paintComponent(Graphics g) { super.paintComponent(g); g.fillOval(10, 10, 130, 80); } }
zem_moh
Messages postés
10
Date d'inscription
mardi 26 juillet 2005
Statut
Membre
Dernière intervention
18 janvier 2010
14 oct. 2009 à 21:07
14 oct. 2009 à 21:07
merci,
Mais malheureusement tu as tombé dans la 2ième cas.
je ne veux pas que l'évènement s'exécuter lorsque le choix est fait par comb2.
cordialement.
Mais malheureusement tu as tombé dans la 2ième cas.
je ne veux pas que l'évènement s'exécuter lorsque le choix est fait par comb2.
cordialement.