Indem Sie ein benutzerdefiniertes Formatmuster angeben, weisen Sie die JRE an, Ihr Gebietsschema zu ignorieren und dieses spezifische Format zu verwenden. Wenn Sie einfach nach einem Spinner für Zahlen auf zwei Dezimalstellen sind, verwenden setModel() anstelle von setEditor(), die eine NumberEditor für Sie erstellen:
JSpinner priceSpinner = new JSpinner();
priceSpinner.setModel(new SpinnerNumberModel(0.00, 0.00, 100.00, 0.01));
Wenn Sie unbedingt Ihr eigenes Format Muster verwenden müssen, können Sie Passen Sie die Dezimalformat-Symbole für dieses Muster an, nachdem Sie es erstellt haben:
JSpinner priceSpinner = new JSpinner();
JSpinner.NumberEditor editor = new JSpinner.NumberEditor(priceSpinner, "0.00");
DecimalFormat format = editor.getFormat();
//better to use Locale.getDefault() here if your locale is already pt_BR
Locale myLocale = new Locale("pt", "BR");
format.setDecimalFormatSymbols(new DecimalFormatSymbols(myLocale));
priceSpinner.setEditor(editor);
Danke, es hat funktioniert. Ich brauche wirklich das benutzerdefinierte Muster, weil ich "1,00" anstelle von "1" möchte. – tuler