Java 基于用户的FormattedTextField';s输入

Java 基于用户的FormattedTextField';s输入,java,swing,jformattedtextfield,Java,Swing,Jformattedtextfield,我试图创建一个格式化文本字段,用户在其中通知产品的价格。但我不知道如何格式化该字段,因为产品可以有任何大小(例如1美元、72美元或489美元)。我希望字段可以有这样的格式:“xxx.00”x是数字,但它们可以是一个或多个,具体取决于产品的价格 如何创建所需的格式?在使用Swing GUI Builder的Netbeans中,您可以通过右键单击格式化文本字段并转到属性来完成此操作。然后选择属性下的formatterFactory,然后选择货币类别。然后选择第三个选项,如下所示: ¤#,##0.00

我试图创建一个格式化文本字段,用户在其中通知产品的价格。但我不知道如何格式化该字段,因为产品可以有任何大小(例如1美元、72美元或489美元)。我希望字段可以有这样的格式:“xxx.00”x是数字,但它们可以是一个或多个,具体取决于产品的价格


如何创建所需的格式?

在使用Swing GUI Builder的Netbeans中,您可以通过右键单击格式化文本字段并转到属性来完成此操作。然后选择属性下的formatterFactory,然后选择货币类别。然后选择第三个选项,如下所示:

¤#,##0.00
这将准确地告诉你你在看什么,并且一旦用户点击文本字段,它将格式化你想要的数字

要在代码中实现这一点,需要:

jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.NumberFormatter(new java.text.DecimalFormat("¤#,##0.00"))));

你为什么要这样做?为了构建一个程序以便我可以管理我的商店的成本。只需使用:
NumberFormat format=NumberFormat.getCurrencyInstance(Locale.US);格式。setMaximumIntegerDigits(3);格式。setMaximumFractionDigits(2);JFormattedTextField=新的JFormattedTextField(格式);字段设置值(0.0)为什么不使用表格?