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
广告