JavaFX点击按钮跳转另一个页面

简介

JavaFX是一种用于创建富客户端应用程序的Java图形库。它提供了丰富的UI控件和布局管理器,可以通过简单的Java代码实现各种界面效果。本文将介绍如何使用JavaFX中的按钮控件实现页面间的跳转。

准备工作

在开始编写代码之前,我们需要准备以下环境:

  1. Java Development Kit(JDK):确保您已经安装了最新版本的JDK。
  2. JavaFX库:确保您已经安装了JavaFX库。如果没有安装,可以从官方网站[

创建JavaFX应用程序

首先,我们需要创建一个JavaFX应用程序。以下是一个简单的JavaFX应用程序示例:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class MainApp extends Application {

    @Override
    public void start(Stage primaryStage) {
        // 创建一个标签
        Label label = new Label("Hello, JavaFX!");

        // 创建一个布局管理器,并将标签放在其中
        StackPane root = new StackPane();
        root.getChildren().add(label);

        // 创建一个场景,并将布局管理器放在其中
        Scene scene = new Scene(root, 300, 200);

        // 将场景设置为主舞台的场景,并显示主舞台
        primaryStage.setScene(scene);
        primaryStage.setTitle("JavaFX App");
        primaryStage.show();
    }

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

在上面的代码中,我们创建了一个简单的JavaFX应用程序。它包含一个标签,将显示"Hello, JavaFX!",并将其放置在一个布局管理器StackPane中。然后,我们将布局管理器放置在场景中,最后将场景设置为主舞台的场景,并显示主舞台。

添加按钮

下面我们将在应用程序中添加一个按钮,当用户点击按钮时,跳转到另一个页面。首先,在MainApp类中添加一个按钮控件,并将其放置在布局管理器中:

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class MainApp extends Application {

    @Override
    public void start(Stage primaryStage) {
        // 创建一个标签
        Label label = new Label("Hello, JavaFX!");

        // 创建一个按钮
        Button button = new Button("跳转");

        // 创建一个布局管理器,并将标签和按钮放在其中
        StackPane root = new StackPane();
        root.getChildren().addAll(label, button);

        // 创建一个场景,并将布局管理器放在其中
        Scene scene = new Scene(root, 300, 200);

        // 将场景设置为主舞台的场景,并显示主舞台
        primaryStage.setScene(scene);
        primaryStage.setTitle("JavaFX App");
        primaryStage.show();
    }

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

在上面的代码中,我们创建了一个按钮,将其文本设置为"跳转",然后将标签和按钮都添加到布局管理器StackPane中。

添加事件处理

接下来,我们需要为按钮添加一个点击事件处理程序,以便在用户点击按钮时执行一些操作。在这种情况下,我们将在按钮点击时跳转到另一个页面。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class MainApp extends Application {

    @Override
    public void start(Stage primaryStage) {
        // 创建一个标签
        Label label = new Label("Hello, JavaFX!");

        // 创建一个按钮
        Button button = new Button("跳转");

        // 创建一个布局管理器,并将标签和按钮放在其中
        StackPane root = new StackPane();
        root.getChildren().addAll(label, button);

        // 创建一个场景,并将布局管理器放在其中
        Scene scene = new Scene(root, 300, 200);

        // 为按钮添加一个点击事件处理程序
        button.setOnAction(event -> {
            // 创建一个新的场景
            Scene newScene = createNewScene();

            // 将新场景设置为主