Frage

Wie fügen Sie das Auffüllen mit Nullen zu einem JSpinner?
Da der Spinner die JFormattedTextField selbst schafft, kann ich nicht nur das Format in den JFormattedTextField Konstruktor übergeben.
Gibt es nicht eine Möglichkeit, die Formatierung auf einem vorhandenen JFormattedTextField zu setzen?

Was ich will: Wert = 37, editor = "0037"

UPDATE:
Ich habe schon versucht, diese wie vorgeschlagen:

JSpinner mySpinner = new JSpinner();  
mySpinner.setEditor(  
    new JSpinner.NumberEditor(mySpinner, "####"));  

und das Ergebnis ist keine Änderung überhaupt auf die Darstellung der Daten des Spinners. Es scheint wie eine vernünftige Lösung; hat jemand versucht, dies erfolgreich, damit ich sicher sein kann, es ist nur etwas schuppig in meiner eigenen Anwendung?

War es hilfreich?

Lösung

Sie können gesetzt Herausgeber selbst, wie folgt aus:

// minimum of four digits
mySpinner.setEditor(new JSpinner.NumberEditor(mySpinner, "0000"));

"0000" ist ein DecimalFormat Zeichenfolge Spezifizieren vier Ziffern, mit Nullen aufgefüllt, wie erforderlich; "####" gibt vier Ziffern aber nicht Null-Pad.

Die DecimalFormat API-Dokumentation Abdeckungen Formatierung Strings im Detail.

Andere Tipps

Mit Bezug auf die javadocs hat JSpinner ein setEditor (JComponent) Methode. Verwenden Sie diese Option setzt Ihre benutzerdefinierte JFormattedTextField mit seinem benutzerdefinierten Format.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top