2010-04-27 6 views
3

Je suis en train de développer une application de bureau Java et de concevoir l'interface graphique à l'aide du générateur d'interface graphique Netbeans Swing. Je veux utiliser un JSpinner dans mon application. Je l'ai traîné et laissé tomber à un JPanel. Maintenant, je veux mettre ses deux propriétés:Java Swing - Problème dans JSpinner

  • D'abord, il devrait afficher des chiffres dans la plage de 1 à 50. Ni moins de 1 ni supérieur à 50. Comment définir cette gamme? Deuxièmement, lorsque j'essaie d'obtenir la valeur par spinner.getValue(), elle renvoie Object. Comme le type de données de mon spinner est Integer, serait-il préférable de baisser le Object en Integer ou Y at-il un autre moyen d'obtenir cette valeur numérique?

Répondre

1

De here, la façon de le faire dans NetBeans:

  1. Créer le JSpinner, comme vous l'avez fait.
  2. Faites un clic droit dessus et sélectionnez "Personnaliser le code"
  3. Définissez l'initialisation pour être un spinner avec SpinnerNumberModel.
+0

lien brisé .... –

6

Créer un SpinnerNumberModel, cela devrait résoudre tous vos problèmes.

SpinnerNumberModel model = 
new SpinnerNumberModel(int initialValue, int minValue, int maxValue, int step) 

Pour plus d'informations, je vous recommande la lecture How to Use Spinners

0

Ham est correct sur votre première question (comment limiter la plage de 1 à 50). Pour la deuxième question, oui, vous pouvez simplement le lancer. La plupart (sinon tous) les composants swing retournent un objet pour leur valeur (la seule exception notable étant les champs de texte).

0

Lisez la section du tutoriel Swing sur "How to Use Spinners". Et n'oubliez pas de consulter le reste de la table des matières pour les bases de Swing.

1
int myInt = (Integer)mySpinner.getValue(); 

Java a autoboxing pour les types de données primitifs, de sorte que le code ci-dessus obtenir votre valeur spinner comme un entier, tant que vous utilisez le SpinnerNumberModel comme suggéré par Ham.