JavaFX 提示框输入

简介

JavaFX 是一个用于构建富客户端应用程序的开源框架。它提供了一系列丰富的图形用户界面(GUI)组件和功能,可以轻松创建跨平台的漂亮应用程序。在 JavaFX 中,我们可以使用提示框(Alert)来向用户显示消息、警告或错误信息。然而,有时我们还需要从用户那里获取一些输入,比如用户名、密码或其他相关信息。在本文中,我们将介绍如何使用 JavaFX 提示框实现输入功能。

JavaFX 提示框

JavaFX 提供了一个名为 TextInputDialog 的类,用于在提示框中接收用户的输入。使用 TextInputDialog 可以方便地弹出一个包含文本输入框的对话框,并等待用户输入。

下面是一个使用 TextInputDialog 的示例代码:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextInputDialog;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;

public class InputDialogExample extends Application {

    @Override
    public void start(Stage primaryStage) {
        Button button = new Button("Open Input Dialog");
        button.setOnAction(event -> {
            TextInputDialog dialog = new TextInputDialog();
            dialog.setTitle("Input Dialog");
            dialog.setHeaderText("Please enter your name:");
            dialog.showAndWait().ifPresent(name -> {
                System.out.println("Name: " + name);
            });
        });

        VBox root = new VBox(button);
        Scene scene = new Scene(root, 300, 200);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

运行上述代码,将会显示一个带有按钮的窗口。当用户点击按钮时,将会弹出一个提示框,要求用户输入姓名。用户输入姓名后,点击确定按钮,控制台将会输出用户输入的姓名。

在上述代码中,我们首先创建了一个按钮,当用户点击按钮时,会触发一个事件。在事件处理方法中,我们创建了一个 TextInputDialog 对象,并设置了对话框的标题和头部文本。然后,我们调用 showAndWait 方法显示对话框,并等待用户输入。最后,我们使用 ifPresent 方法判断用户是否输入了姓名,并在控制台上输出用户输入的姓名。

自定义提示框样式

JavaFX 的 TextInputDialog 对象默认提供了一个简单的文本输入框。然而,有时我们可能需要自定义提示框的样式,以满足特定的设计要求。

在 JavaFX 中,我们可以通过 getEditor 方法获取到 TextInputDialog 的输入框,并对其进行自定义。下面是一个示例代码,演示如何自定义提示框的样式:

TextInputDialog dialog = new TextInputDialog();
dialog.setTitle("Input Dialog");
dialog.setHeaderText("Please enter your name:");

// 获取输入框
TextField textField = dialog.getEditor();
textField.setStyle("-fx-background-color: yellow;");

dialog.showAndWait().ifPresent(name -> {
    System.out.println("Name: " + name);
});

在上面的代码中,我们首先获取到 TextInputDialog 对象的输入框,并使用 setStyle 方法设置其背景颜色为黄色。

结论

通过使用 JavaFX 提示框的输入功能,我们可以方便地与用户交互,接收用户的输入数据。本文介绍了如何使用 TextInputDialog 类实现提示框输入功能,并通过示例代码演示了如何自定义提示框的样式。希望本文对你理解和使用 JavaFX 提示框输入功能有所帮助。

参考资料

  • [JavaFX 14 Documentation](
  • [JavaFX Tutorial](
课程号 课程名称 学分
001 JavaFX 提示框输入 3
002 JavaFX 界面设计基础 2
003 JavaFX 动画效果 3
004 JavaFX 布局管理器 2
005 JavaFX 事件处理 3
006