在 Java 中对微调器进行零填充
题
如何向 a 中添加零填充 JSpinner
?
由于旋转器创建了 JFormattedTextField
本身,我不能只将格式传递到 JFormattedTextField 构造函数中。
有没有办法在现有的基础上设置格式 JFormattedTextField
?
我想要的是:值= 37,编辑器=“0037”
更新:
我已经按照建议尝试过:
JSpinner mySpinner = new JSpinner();
mySpinner.setEditor(
new JSpinner.NumberEditor(mySpinner, "####"));
结果是旋转器数据的呈现完全没有变化。这似乎是一个合理的解决方案;有没有人成功地尝试过这个,所以我可以确定这只是我自己的应用程序中的一些问题?
解决方案
你可以 设置编辑器 你自己,像这样:
// minimum of four digits
mySpinner.setEditor(new JSpinner.NumberEditor(mySpinner, "0000"));
"0000"
是一个 DecimalFormat
指定四位数字的字符串,必要时用零填充; "####"
指定四位数字但不补零。
这 DecimalFormat
API文档 更详细地介绍了格式化字符串。
其他提示
参考javadocs,JSpinner有一个 设置编辑器(JComponent) 方法。使用它来设置自定义 JFormattedTextField 及其自定义格式。
不隶属于 StackOverflow