Bonjour,
J'ai un JSpinner pour choisir le temps d'une partie dans un de mes projets.
J'aimerais récupérer la valeur selectionnée du JSpinner. cependant, je n'y arrive pas. Voici ma classe :
Lorsque je demande de m'afficher la source du JSpinner, j'obtiens cette ligne :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 public class PanelTemps extends JPanel implements ActionListener { //Spinner String[] temps = {"1 minute","2 minutes","3 minutes","5 minutes","10 minutes","15 minutes","20 minutes","30 minutes"}; SpinnerModel model = new SpinnerListModel(temps); JSpinner spinner = new JSpinner(model); public PanelTemps() { super(new BorderLayout()); String[] tempsStrings = {"Temps infini","Minutes par partie"}; // Les indices commencent à 0, jusqu'à 1 maintenantcar il n'y a que 2options dans le combobox JComboBox tempsList = new JComboBox(tempsStrings); tempsList.setSelectedIndex(1); tempsList.addActionListener(this); // JSpinner spinner.setValue("10 minutes"); // Valeur initiale spinner.addChangeListener(listener); // Position du combobox et du JSpinner add(spinner, BorderLayout.CENTER); add(tempsList, BorderLayout.AFTER_LAST_LINE); } public void actionPerformed(ActionEvent e) { JComboBox cb = (JComboBox)e.getSource(); String tempsName = (String)cb.getSelectedItem(); if(tempsName == "Minutes par partie") { spinner.setEnabled(true); System.out.println("Minutes par partie selectionné"); } if(tempsName == "Temps infini") { spinner.setEnabled(false); System.out.println("Temps infini selectionné"); } } ChangeListener listener = new ChangeListener() { public void stateChanged(ChangeEvent e) { System.out.println("Source :"+e.getSource()); } }; }
Source :javax.swing.JSpinner[,0,0,147x20,invalid,layout=javax.swing.plaf.basic.BasicSpinnerUI$Handler,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.BorderUIResource$CompoundBorderUIResource@196f4b5,flags=16777544,maximumSize=,minimumSize=,preferredSize=]
Quoi que je choisisse dans mon JSpinner, j'obtiens toujours cette ligne et je n'arrive pas à récupérer la source.
Merci d'avance pour vos réponses. A+
Partager