日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java验证(javafx)

發布時間:2023/12/3 java 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java验证(javafx) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

驗證是核心javafx框架所缺少的一件事。 為了填補這一空白, controlsfx中已經存在一個第三方驗證庫 。 但是,我有一個問題:它不是在考慮FXML的情況下創建的。 這并不是說它不是一個很好的庫,只是錯過了這個細節,對我來說這是不可行的。 因此,我決定創建自己的驗證框架: FXValidation 。

怎么運行的

為了向您展示FXValidation的工作原理,讓我們從頭開始,向您展示一個使用該庫時FXML文件的外觀示例。 這是一個登錄屏幕的簡單示例,其中用戶需要輸入用戶名和密碼:

<Label><text>User Name:</text> </Label> <TextField fx:id="userName" id="userName"></TextField> <Label><text>Password:</text> </Label> <PasswordField fx:id="password" id="password"></PasswordField><Button text="Submit" onAction="#submitPressed"></Button><fx:define><RequiredField fx:id="requiredField1" ><srcControl><fx:reference source="userName"></fx:reference></srcControl></RequiredField><RequiredField fx:id="requiredField2" ><srcControl><fx:reference source="password"></fx:reference></srcControl></RequiredField> </fx:define><ErrorLabel message="Please enter your username"><validator><fx:reference source="requiredField1"></fx:reference></validator> </ErrorLabel> <ErrorLabel message="Please enter your password"><validator><fx:reference source="requiredField2"></fx:reference></validator> </ErrorLabel>

在FXML代碼段的開頭,我定義了用于輸入登錄詳細信息的文本字段和密碼字段。 除此之外,還有一個提交按鈕,以便用戶可以將登錄信息發送到系統。 之后是有趣的部分。 首先,我們定義幾個RequiredField類型的驗證器。 該驗證器檢查所輸入的內容是否為空,如果是,則在標志中存儲驗證是否有錯誤。 FXValidation框架中還內置了其他類型的驗證器,但我們將稍作介紹 。 最后,我們定義了幾個ErrorLabel。 這是實現IValidationDisplay的節點,實現此接口的任何類都是一個類,其目的是在驗證過程中發生錯誤時向用戶顯示信息。 當前,框架中只有此類之一:ErrorLabel。 最后,我們需要在用戶單擊“提交”按鈕時調用驗證,這是在控制器中的Submit方法上完成的:

public void submitPressed(ActionEvent actionEvent) {requiredField1.eval();requiredField2.eval(); }

這將觸發對我們定義的驗證器的驗證。 如果有錯誤,ErrorLabels將顯示在其中定義的錯誤消息。 驗證器還有另外一件事:驗證器生效后,它們將css樣式類“ error”添加到每個有錯誤的控件中。 這使程序員只要在控件上附加了錯誤類,就可以使用css改變控件的樣式。 程序員可以通過檢查驗證器中的hasErrors屬性來檢查驗證過程中的錯誤。

這是我們的示例:

細節

從上面顯示的內容可以看出,基本上涉及兩種類型的類:

  • 驗證器:負責檢查目標控件( srcControl )是否符合驗證規則。 如果沒有,它將“錯誤”樣式類附加到目標控件,將其hasErrors屬性設置為true。 所有驗證器都從ValidatorBase擴展。
  • 錯誤顯示信息:負責通知用戶驗證發生了什么問題,可能是必填字段,字段內容沒有必要的字符數,等等。所有這些類都實現IValidationDisplay

在庫中,當前有3個驗證器,并且只有一個錯誤“顯示器”即ErrorLabel。 驗證器如下:

  • RequiredField:檢查目標控件( srcControl )是否具有內容,如果沒有,則給出錯誤。
  • CardinalityValidator:檢查目標控件( srcControl )是否至少具有最小字符數和最大最大字符數。
  • RegexValidator:根據給定的正則表達式檢查目標控件( srcControl )的內容

就是這樣。

翻譯自: https://www.javacodegeeks.com/2014/08/validation-in-java-javafx.html

總結

以上是生活随笔為你收集整理的Java验证(javafx)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。