Je n'arrive pas à utiliser la valeur numérique utilisée par des JPinner utilisant un SpinnerNumberModel.
Voici des extraits de mon code :
(...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 //creation du SpinnerModel SpinnerNumberModel PourRot = new SpinnerNumberModel (0, -360, 360, 1 );
(...)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 }
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.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public void actionPerformed (ActionEvent ev) { if (ev.getSource() == calculer) { RotVal = PourRot.getNumber().doubleValue(); System.out.println(RotVal);
Que faire? Cela fait 10 jours que je cherche!!!![]()
Partager