JavaFX - 密碼欄位



文字欄位接受並顯示文字。使用它,我們可以接受使用者的輸入並將其讀取到我們的應用程式中。與文字欄位類似,密碼欄位接受文字,但不顯示給定的文字,而是透過顯示回顯字串來隱藏鍵入的字元,如下面的圖所示:

JavaFX passwordfield

JavaFX 中的密碼欄位

在 JavaFX 中,名為PasswordField的類表示一個密碼欄位,它屬於javafx.scene.control包。使用它,我們可以接受使用者的輸入並將其讀取到我們的應用程式中。此類繼承了Text類。要建立密碼欄位,我們需要使用以下建構函式例項化此類:

  • PasswordField() - 這是預設建構函式,它將建立一個空的密碼欄位。

在 JavaFX 中建立密碼欄位時,我們的第一步是使用其預設建構函式例項化 PasswordField 類。接下來,透過將 PasswordField 物件傳遞給其建構函式來定義佈局面板,例如 Vbox 或 Hbox。最後,設定場景和舞臺以在螢幕上顯示密碼欄位。

示例

以下 JavaFX 程式演示瞭如何在 JavaFX 應用程式中建立密碼欄位。將此程式碼儲存到名為JavafxPsswrdfld.java的檔案中。

import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
public class JavafxPsswrdfld extends Application {
   public void start(Stage stage) {
      //Creating nodes
      TextField textField = new TextField();
      PasswordField pwdField = new PasswordField();
      //Creating labels
      Label label1 = new Label("Name: ");
      Label label2 = new Label("Pass word: ");
      //Adding labels for nodes
      HBox box = new HBox(5);
      box.setPadding(new Insets(25, 5 , 5, 50));
      box.getChildren().addAll(label1, textField, label2, pwdField);
      //Setting the stage
      Scene scene = new Scene(box, 595, 150, Color.BEIGE);
      stage.setTitle("Password Field Example");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

要從命令提示符編譯和執行儲存的 Java 檔案,請使用以下命令:

javac --module-path %PATH_TO_FX% --add-modules javafx.controls JavafxPsswrdfld.java
java --module-path %PATH_TO_FX% --add-modules javafx.controls JavafxPsswrdfld

輸出

當我們執行上述程式碼時,它將生成以下輸出。

Password Field Output
廣告