问题描述
|
我需要一个小部件来选择一个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 \”。我知道直的with3ѭ(可以与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);