获取准确的 jSpinner 值

Get the exact jSpinner Value

有人能告诉我如何从 jSpinner 中获取准确的值吗? 这是当用户 select 时间时我的 jSpinner 的显示方式:

然而,当我将 jSpinner 值传递给文本字段时,它看起来像这样:

这是我的代码:

timeout1 = spnrTOH1.getValue()+":"+spnrTOM1.getValue()+" "+spnrTOA1.getValue();

这是我的 jSpinner 模型:

如有任何帮助,我们将不胜感激。提前致谢! 对不起,如果我的问题看起来很愚蠢。新手在这里。 :)

它与微调器及其型号无关。

您需要将字符串格式化为具有前导零。由于微调器的渲染器格式化程序,当精确值为 0 时微调器显示 00。渲染器是一个组件,负责显示模型持有的 GUI 值。例如。自定义渲染器可以将整数显示为罗马数字。

要格式化输出,只需使用 String#format 方法,如下所示:

timeout1 = String.format("%02d:%02d %s",spnrTOH1.getValue(),spnrTOM1.getValue(),spnrTOA1.getValue());

这样您就可以将整数值显示为带前导 0 的 2 位数字。

将此函数添加到您的程序中..

public String getString(Object object) {
    int number = Integer.parseInt(object.toString().trim());
    if(number < 10) {
        return "0" + number;
    }
    return String.valueOf(number);
}

并在必须将值设置为文本字段时调用此方法,例如

timeout1 = getString(spnrTOH1.getValue())+":"+getString(spnrTOM1.getValue())+" "+spnrTOA1.getValue();