问题标签 [inputverifier]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 何时以及如何验证?
这个问题更多的是关于在验证输入数据时避免代码重复的良好做法。
应用程序导入一个电子表格(XLS 或 XLSX)并实例化一个OrderList
包含多个OrderUnits
(指原始电子表格的每一行)的对象。用户可以更改一些属性,包括那些尚未通过导入电子表格设置的属性。换句话说,导入功能形成了一个数据基础,然后由用户扩展。某些属性甚至是自动设置的(例如,如果 orderUnit 的长度大于 5.0 米,则材料将设置为钢,而不是默认的塑料。)。这是一个 json 配置文件,其中可以定义 orderunit 的所有属性,包括类型(字符串、十进制、列表)和验证(not_blank、...)等字段。
我的问题:因为有两种插入数据的方法,在 orderUnit 属性设置之前,哪里是验证数据的好地方?
一个地方是数据的导入,它完全发生在我的
OrderUnit
模型类中,我可以使用一些自定义验证机制。另一个地方是通过
JTextComponents
可以在导入后设置或更改的地方。我想InputVerifier
在每个JComponent
.
但这会导致我的验证条件重复代码。
有没有一种很好的方法来验证一次或至少重复使用相同的验证模型两次?
java - 从 JTextField 中删除 InputVerifier
我真的很惊讶这不在文档中,或者至少不在 google中。
我有一个类可能需要删除验证器或用另一个替换它。具体来说,这些方法是在接口中定义的:
我可以实现bind
:
但是如何从 JTextField取消设置输入验证器?
java - Creating A JTextField Input Validator
I am trying to create a JTextField
input validator following Building a Swing Validation Package with InputVerifier. I have taken all the class on that page an am now trying to use the NotEmptyValidator
found here. I have a JFrame
and a JTextField
. I am trying to use this package but its giving me an error.The code is shown below:
NOTE: I have just taken the classes as they are. The only code I have added is above.
My Questions:
1. How do I instantiate the NotEmptyValidator
? I mean I provided the JTextField
and the String
but don't know how to do it with the JDialog
.
- How do we resolve this error and what went wrong here?
java - 如何在用户单击 SAVE -Java 之前使空白字段有效
这是一个简单的程序,它使用 JDialog 来添加或编辑工单。当对话框出现时,用户将在字段中输入信息(姓名、日期、职位、计费率等)。程序必须验证这些字段中的每一个。问题是,如果我将一个字段留空并跳到下一个字段,则会弹出错误消息。实际上,这不是问题,它应该可以正常工作,但是,我想让所有空白字段都有效,直到用户单击“保存”。有什么建议或想法吗?我已经将整个程序粘贴在下面,您可以自己编译和运行它,谢谢!
java - 如何在 Java 中调用 InputVerifier?
我正在使用 NetBeans IDE 使用 java 和 swing 设计图形用户界面。GUI 的目的是接受用户输入,然后生成一些文本文件,用作用 Fortran 编写的程序的输入。
问题是 Fortran 程序无法处理文件名或路径中的空格。所以我需要检查用户的文件名是否在 GUI 中没有任何空格。
我已经实现了一个 InputVerifierContainsNoSpaces
就是这样做的。但是,只有当用户关注 jTextField 时才会调用它。问题是用户不太可能关注 jTextField,而是使用激活 JFileChooser 的 jButton 输入文件名。
我想做的是jTextField1.verifyInput()
在动作监听器中放置类似的东西jButton1ActionPerfromed
,这样我就可以向用户显示一个错误对话框。我怎样才能做到这一点?
这是一个最小(非)工作示例:
java - Java Swing JTextField setInputVerifier 保持对 TextField 的关注
我有一个public class JdbDateTextField extends JTextField
and 在我添加的构造函数中this.setInputVerifier(new ValidDateOrEmptyVerifier());
。
我class ValidDateOrEmptyVerifier extends InputVerifier
用来验证输入的格式。
如果输入格式错误并且用户失去了 的焦点JdbDateTextField
,我返回false
并且ValidDateOrEmptyVerifier
再次获得焦点JdbDateTextField
。
如果用户从 切换JdbDateTextField
到另一个文本字段或按下按钮,则此方法有效。如果按下按钮并且输入格式错误,则不执行按钮操作,焦点仍位于JdbDateTextField
.
这正是我想要的。JdbDateTextField
用户在输入有效字符串之前不能离开。
问题是它JdbDateTextField
在一个 JPanel 中,JTabbedPane
所以我有一个带有多个选项卡的 GUI。
如果我JdbDateTextField
选择了,输入无效的输入,然后直接单击另一个选项卡,它仍然会切换选项卡。所以我能够提供错误的输入。
我的问题是:
有没有办法执行输入验证,它不允许在它之前执行任何其他事件true
java - InputVerifier 窃取焦点
我有一个 InputVerifier 在我的应用程序中窃取焦点的问题。当我单击使用此验证器的文本字段时,我无法单击其他任何地方,除非我用 4 位数字填充该字段(验证器在这里是为了防止输入除数字之外的任何其他内容,并且必须有 4 个)。
这是我的代码:
有什么办法可以防止这种情况发生吗?
java - Java InputVerifier 查找导致“焦点丢失”的组件
我有一个InputVerifier
for a jTextField
,当然InputVerifier
当我失去文本字段的焦点时触发,例如通过单击一个按钮。
如果我使用 aFocusListener
我可以这样做:
这给了我组件,这就是在这种情况下单击按钮失去焦点的原因。
有没有办法做这样的事情InputVerifier
呢?基本上我需要知道InputVerifier
触发的原因是否是因为按下了按钮。
java - 如何使输入控件验证电子邮件地址的格式有效?
我有一个表格,要填写的字段是我要控制的邮件,以便输入地址与标准邮件一致
java - InputVerifier 中的 Java 接口
我有这个代码:
}
这是一个客户端接口。我看到接口在InputVerifier
. 我该如何解决这个问题?