Nul-padding 'n draaier in Java
Vra
Hoe kan jy nul padding voeg by 'n JSpinner
?
Sedert die draaier skep die JFormattedTextField
self, kan ek nie net slaag die formaat in die JFormattedTextField constructor.
Is daar nie 'n manier om die uitleg te stel op 'n bestaande JFormattedTextField
?
Wat ek wil: waarde = 37, redakteur = "0037"
UPDATE:
Ek het hierdie probeer soos voorgestel:
JSpinner mySpinner = new JSpinner();
mySpinner.setEditor(
new JSpinner.NumberEditor(mySpinner, "####"));
en die resultaat is geen verandering aan al die aanbieding van data die draaier se. Dit lyk soos 'n redelike oplossing; het iemand probeer dit suksesvol so ek kan seker wees dit is net iets vlokkerige in my eie aansoek?
Oplossing
Jy kan stel die redakteur jouself, soos volg:
// minimum of four digits
mySpinner.setEditor(new JSpinner.NumberEditor(mySpinner, "0000"));
"0000"
is 'n DecimalFormat
string spesifiseer vier syfers, nul-opgestopte as wat nodig is; "####"
spesifiseer vier syfers, maar nie nul-pad.
Die DecimalFormat
API dokumentasie dek opmaak snare in meer detail.
Ander wenke
Met verwysing na die javadocs, JSpinner het 'n setEditor (JComponent) metode. Gebruik dit om jou persoonlike JFormattedTextField, stel met sy persoonlike formaat.