我想为格式化程序文本字段中的数字设置上限。假设有一个字符串,其格式如下:
036 12' 23.67"
第一个数字必须小于 180,因此当用户尝试键入大于 180 的数字时,必须对其进行屏蔽。 我使用 MaskFormatter 如上所述格式化字符串,但我无法为第一个数字设置上限。我怎样才能做到这一点。谢谢。
最佳答案
我不知道如何直接使用 JFormattedTextField 执行此操作。
一种解决方案是使用 InputVerifier,这样当用户离开时,他们会收到一条错误消息,焦点会返回到文本字段。
另一种方法是向 AbstractDocument 添加一个 DocumentFilter。然后您可以在将文本添加到文档之前对其进行编辑。阅读 Text Component Features 上的 Swing 教程部分获取更多信息。
关于java - 在 Java 的 JFormattedTextfield 中设置数字的上限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2374807/