我已经用 6 个 jTextFields 制作了表格。用户应该只能在每个文本字段中输入 1 到 48 之间的数字。还应该检查是否有任何数字重复,应用程序应检查是否有任何字段留空。
我知道如何在 VB.net 中执行此操作,但总的来说我是 Java 新手。
在 VB.net 中,我会将所有文本字段放在数组中,然后检查所有文本字段是否都已填写,数字是否在范围内,并检查任何字段中是否有重复的数字。如果满足所有条件,我将继续将输入发送到数据库。
我对Java相当陌生,所以如果有人可以帮助我或为我指明正确的方向,那将是非常棒的。
有多种方法可以实现这一点,具体取决于您希望如何实现...
使用 a JFormattedTextField,这将在字段被操作或焦点丢失时验证用户输入,丢弃它认为是无效的输入。
这对于大多数常见格式的后期验证很有用,但确实缺乏一些灵活性......
使用 a JSpinner,这将在操作字段或失去焦点后验证用户输入。当您希望允许用户在值之间快速移动而无需实际键入内容时,这是很好的(单击向上或向下单击更容易选择字段、向右移动、删除最后一个字符并将值增加一个...例如:P)
使用 aInputVerifier执行您自己的验证并根据您的需要采取适当的步骤。
从技术上讲,您可以将它与其他解决方案一起使用,但它可能会影响方式JFormattedField和JSpinner工作,所以要小心。
这使您能够定义用于在操作或失去焦点时发布验证字段的实际规则。它还允许您决定当字段无效时焦点横向应如何工作,允许将焦点保持在该字段上,直到值有效为止。
您也可以在此处显示错误消息...
使用 a DocumentFilter,这将允许您在用户输入时对输入进行实时验证,实时丢弃无效字符。
这是最复杂的解决方案之一,但也可能是最有用的解决方案之一。
看看这里的例子
| 归档时间: |
|
| 查看次数: |
601 次 |
| 最近记录: |