我需要一个小部件来选择一个TCP/UDP端口,所以我写了以下内容:
public static JSpinner makePortSpinner()
{
final JSpinner spinner = new JSpinner(
new SpinnerNumberModel( DefaultPort, 1024, 65535, 1 ) );
spinner.setFont( Monospaced );
return spinner;
}
。Monospaced
和DefaultPort
是静态常量。
我想从结果显示中删除数字分组字符。 例如,默认值 55024 显示为"55,024",我希望它是"55024"。 我知道直NumberFormat
,正如我可能与JFormattedTextField
一起使用的那样,有一个setGroupingUsed(boolean)
的方法来实现这个目的。 JSpinner
有这样的事情吗? 我应该SpinnerNumberModel
子类吗?
在微调器上设置数字编辑器的格式:
spinner.setEditor(new JSpinner.NumberEditor(spinner,"#"));
或者更明确地说:
JSpinner.NumberEditor editor = new JSpinner.NumberEditor(spinner);
editor.getFormat().setGroupingUsed(false);
spinner.setEditor(editor);