JavaFX中的字段验证

 2023-02-16    394  

问题描述

我使用FXML创建了一个注册表格.现在,我想实现字段验证功能.我正在尝试实施Textfield的验证,但我仍然没有得到它.

推荐答案

不幸的是,Javafx中没有验证框架.即使是花岗岩数据服务等框架也与Javafx遇到了麻烦: http://granitedataservices.com/blog/2012/2012/11/29/thoughts-abouts-about-javafx-and-javafx-and-bean-bean-bean-validation/(!Wayback)

JavaFX中的字段验证

如果您对使用Javafx的Bean验证感兴趣,则Granite会生成带有Javafx属性字段的Java Bean,并启用了bean验证(您验证了Java bean,bonded bonded to to to y javafx组件).它可以是一个很好的解决方案,也可以是您问题的好灵感.

其他推荐答案

您可以验证失去对控件的关注.那是一种非常常见的跨平台方法…

textField.focusedProperty().addListener((observable, oldValue, newValue) ->
{
   if(textField.isFocused() == false)
   {
      LOGGER.debug("Validate on lost focus here...");
   }
});

javafx 8

其他推荐答案

正如@zenbeni指出的那样,没有自动验证,但是您可以使用事件处理程序实现自己的验证.您要如何实现它将确定您选择实现的事件处理程序.他们可以非常复杂.这是其他人的尝试创建一个完全验证的文本字段组件: javafx 2.2/a>

您可以使用此处描述的SetOnAction处理程序 http://docs.oracle.com/javafx/2/api/javafx/javafx/scene/control/control/control/textfield.htfield.html#setonaction(javafx.event.event.eventhandhandhandler) ,但是如果您要做很​​多次,您将需要更完整的东西,例如上面的实现.

以上所述是小编给大家介绍的JavaFX中的字段验证,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/34091.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。