Comment prendre en compte la valeur d'un JSpinner?
Je n'arrive pas à utiliser la valeur numérique utilisée par des JPinner utilisant un SpinnerNumberModel.
Voici des extraits de mon code :
Code:
1 2
| //creation du SpinnerModel
SpinnerNumberModel PourRot = new SpinnerNumberModel (0, -360, 360, 1 ); |
(...)
Code:
1 2 3 4 5
| //Creation du JSpinner inséré dans une fenêtre
rotation = new JSpinner (PourRot);
bHor.add(rotation); //bHor est le gestionnaire de composants
rotation.addChangeListener(this);
RotVal = PourRot.getNumber().doubleValue(); //cette méthode, testée //avec un System.out.println marche ici |
(...)
Code:
1 2 3 4 5 6 7
| public void stateChanged(ChangeEvent e) {
if (e.getSource() == rotation){
try {rotation.commitEdit(); //capture des changements d'etat
} // du JSpinner et traitement
catch (ParseException pe){ // normalement ici la valeur de
} //PourRot est actualisée
} |
(...)
Code:
1 2 3 4
| public void actionPerformed (ActionEvent ev) {
if (ev.getSource() == calculer) {
RotVal = PourRot.getNumber().doubleValue();
System.out.println(RotVal); |
La ligne en rouge, mise dans l'accolage StateChanged ou ActionPerformed déclanche toute une liste d'exeptions dans la console alors qu'elle marche auparavant. Je n'arrive par à utiliser la valeur éditée dans le JSpinner pour les intégrer dans des calculs.
Que faire? Cela fait 10 jours que je cherche!!!:cry: