JavaFX笔记 | 第一个JavaFX应用 —— Hello World

553 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第20天,点击查看活动详情

JavaFX是什么?

JavaFX是一个强大的图形和多媒体处理工具包集合,它能够使程序开发人员轻松的创建跨平台的富客户端应用程序。

Hello World

国际惯例,先来编写一个Hello World入门级示例程序。

public class HelloWorld extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        Group root = new Group();

        Button button = new Button();
        button.setText("Hello World");
        button.setLayoutX(100D);
        button.setLayoutY(60D);
        button.setOnAction(event -> System.out.println("Hello World."));
        root.getChildren().add(button);

        Scene scene = new Scene(root, 500, 300);
        primaryStage.setScene(scene);

        primaryStage.setTitle("第一个JavaFX应用 —— Hello World.");
        primaryStage.show();
    }

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

程序说明:

1、所有的JavaFX主程序都需要继承javafx.application.Application类。
2、继承继承Application类必须要重写start()方法。
3、main()方法中必须调用Applicationlaunch()方法,该方法负责启动JavaFX程序。

JavaFX的UI分为如下几类:

1、窗口(stage)
2、场景(scene)
3、布局(layout)
4、组件(element)

它们之间的层级关系为:

|- 窗口
  |- 场景
    |- 布局
      |- 组件

JavaFX布局

JavaFX的布局类位于包javafx.scene.layout下。

JavaFX常用的布局有如下几种:

1、网格布局(GridPane)

网格布局将整个面板划分为若干个格子,每个格子的大小是一样的,每个格子中可以放置一个控件。

2、边框布局(BorderPane)

边框布局将整个面板划分五个区域,分别是上、下、左、右、中,每个区域可以放置一个控件。

3、横向布局(HBox)

HBox布局将应用程序中的所有节点排列在一个水平行中。

4、竖向布局(VBox)

VBox布局将我们应用程序中的所有节点排列在一个垂直列中。

5、堆叠布局(StackPane)

堆栈窗格布局将应用程序中的节点排列在另一个上面,就像在堆栈中一样。 首先添加的节点位于堆栈的底部,下一个节点位于堆栈的顶部。

6、流式布局(FlowPane)

流式布局在一行上排列连续的子组件,并且如果当前行填满了以后,则自动将子组件向下推到下一行。