📜  JavaFX | TabPane 类(1)

📅  最后修改于: 2023-12-03 15:16:03.387000             🧑  作者: Mango

JavaFX | TabPane 类介绍

JavaFX | TabPane 类是JavaFX控件中用于管理不同的选项卡以及它们之间的视图切换的一个重要组件。它有时被称为“选项卡控件”。

TabPane 类的功能和特性
  • 管理选项卡:TabPane 可以管理多个选项卡,并提供简单的API来设置和访问选项卡的属性。
  • 支持多种视图:每个选项卡可以显示不同的视图,包括单独的控件、视图列表和嵌套布局等。
  • 支持样式和CSS:可以使用CSS样式表来修改选项卡的外观和行为。
  • 可以通过编程方式进行配置:可以使用Java代码编程方式创建和配置选项卡,也可以使用FXML文件和SceneBuilder等可视化工具进行设计。
  • 可以在运行时添加或删除选项卡。
TabPane 类的代码示例

以下代码示例演示了如何创建一个简单的 TabPane 并添加一些选项卡:

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

public class MyTabPane extends Application {

    @Override
    public void start(Stage primaryStage) {
        TabPane tabPane = new TabPane();

        // 创建两个选项卡
        Tab tab1 = new Tab("选项卡1");
        Tab tab2 = new Tab("选项卡2");

        // 向选项卡中添加控件
        StackPane stackPane1 = new StackPane();
        stackPane1.getChildren().add(new Label("这是选项卡1的内容"));

        StackPane stackPane2 = new StackPane();
        stackPane2.getChildren().add(new Label("这是选项卡2的内容"));

        tab1.setContent(stackPane1);
        tab2.setContent(stackPane2);

        // 把选项卡添加到 TabPane 中
        tabPane.getTabs().addAll(tab1, tab2);

        Scene scene = new Scene(tabPane, 300, 200);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
代码分析

首先,我们创建一个 TabPane 对象,然后创建两个选项卡 Tab 对象,并设置它们的标题。

接着,我们创建两个 StackPane 布局,用于存放选项卡的内容。

然后,我们使用 setContent() 方法将 StackPane 布局添加到每个选项卡中。

最后,我们将两个选项卡添加到 TabPane 中,将 TabPane 放到 Scene 中,最后显示出来。

Markdown输出
# JavaFX | TabPane 类介绍

JavaFX | TabPane 类是JavaFX控件中用于管理不同的选项卡以及它们之间的视图切换的一个重要组件。它有时被称为"选项卡控件"。

## TabPane 类的功能和特性

- 管理选项卡:TabPane 可以管理多个选项卡,并提供简单的API来设置和访问选项卡的属性。
- 支持多种视图:每个选项卡可以显示不同的视图,包括单独的控件、视图列表和嵌套布局等。
- 支持样式和CSS:可以使用CSS样式表来修改选项卡的外观和行为。
- 可以通过编程方式进行配置:可以使用Java代码编程方式创建和配置选项卡,也可以使用FXML文件和SceneBuilder等可视化工具进行设计。
- 可以在运行时添加或删除选项卡。

##  TabPane 类的代码示例

以下代码示例演示了如何创建一个简单的 TabPane 并添加一些选项卡:

```java
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.Tab;
import javafx.scene.control.TabPane;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class MyTabPane extends Application {

    @Override
    public void start(Stage primaryStage) {
        TabPane tabPane = new TabPane();

        // 创建两个选项卡
        Tab tab1 = new Tab("选项卡1");
        Tab tab2 = new Tab("选项卡2");

        // 向选项卡中添加控件
        StackPane stackPane1 = new StackPane();
        stackPane1.getChildren().add(new Label("这是选项卡1的内容"));

        StackPane stackPane2 = new StackPane();
        stackPane2.getChildren().add(new Label("这是选项卡2的内容"));

        tab1.setContent(stackPane1);
        tab2.setContent(stackPane2);

        // 把选项卡添加到 TabPane 中
        tabPane.getTabs().addAll(tab1, tab2);

        Scene scene = new Scene(tabPane, 300, 200);
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}
代码分析

首先,我们创建一个 TabPane 对象,然后创建两个选项卡 Tab 对象,并设置它们的标题。

接着,我们创建两个 StackPane 布局,用于存放选项卡的内容。

然后,我们使用 setContent() 方法将 StackPane 布局添加到每个选项卡中。

最后,我们将两个选项卡添加到 TabPane 中,将 TabPane 放到 Scene 中,最后显示出来。