7.9 JavaFx 的基础以及SceneBuilder

目录

一、JavaFx介绍

二、JavaFx 应用程序的基本结构

三、JavaFx应用的Stage

        3.1设置标题

        3.2 设置图标

        3.3 窗口大小控制

        3.4 initStyle 设置窗口样式,StageStyle 窗口样式

        3.5 x,y坐标  width,heigth  宽高

        3.6取消或重写操作系统默认退出事件

四 、JavaFx应用的Scene        

五、Scene Builder 构建 fxml 布局

        1、首先要下载Scene Builder | JavaFx 中文官方网站

        2.Scene Builder 的使用


一、JavaFx介绍

        JavaFX 是一个开源的下一代客户端应用平台,适用于基于Java构建的桌面、移动端和嵌入式系统。 它是许多个人和公司的共同努力的成果,目的是为开发丰富的客户端应用提供一个现代、高效、功能齐全的工具包。

二、JavaFx 应用程序的基本结构

        

窗口(stage):窗口里面可以设置场景,但是一次只能显示一个场景。

场景(scene):场景可以添加UI组件图的树形结构。

根节点(parent):根节点设置为一个布局,放置不同的节点(组件)。可以在根节点嵌套放置根节点。

三、JavaFx应用的Stage

        3.1设置标题

//设置标题
stage.setTitle("hello");

        3.2 设置图标

// 设置图标
stage.getIcons().add(new Image("image/table.png"));//放自己想要图标的图片

        3.3 窗口大小控制

//窗口大小控制:true大小可调,false不可调
stage.setResizable(true);

        3.4 initStyle 设置窗口样式,StageStyle 窗口样式

//  设置窗口样式
stage.initStyle(StageStyle.DECORATED);  //默认样式

        3.5 x,y坐标  width,heigth  宽高

//设置位置   坐标表示
button1.setLayoutX(200);
button1.setLayoutY(200);
//设置宽高  
stage.setWidth(400);
stage.setHeight(400);       

        3.6取消或重写操作系统默认退出事件

        //1.取消操作系统默认退出事件
        Platform.setImplicitExit(false);
        stage.setOnCloseRequest(event -> {
            //2.取消右上角的x关闭窗口事件
            event.consume();
            //3.创建一个弹窗
            Alert alert = new Alert(Alert.AlertType.CONFIRMATION);
            alert.setTitle("退出");
            alert.setHeaderText(null);
            alert.setContentText("确认要退出!");
            Optional<ButtonType> result = alert.showAndWait();
            if (result.get() == ButtonType.OK) {
                //退出程序
                Platform.exit();
                //关闭窗口,不退出程序
                stage.close();
            }
        });

四 、JavaFx应用的Scene        

        场景切换、修改鼠标样式

public class JavaFx2 extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception {
        //1编写第一个场景
        Button btn1 = new Button("第一个场景");
        btn1.setLayoutX(200);
        btn1.setLayoutY(200);
        AnchorPane anchorPane1 = new AnchorPane();
        anchorPane1.getChildren().add(btn1);
        Scene scene1 = new Scene(anchorPane1);
        // 修改场景1的鼠标样式
        scene.setCursor(new ImageCursor(new Image("")) // 放自己喜欢的图片地址
 
        //2编写第二个场景
        Button btn2 = new Button("第二个场景");
        btn2.setLayoutX(200);
        btn2.setLayoutY(200);
        AnchorPane anchorPane2 = new AnchorPane();
        anchorPane2.getChildren().add(btn2);
        Scene scene2 = new Scene(anchorPane2);
 
        //3.点击按钮,切换场景
        btn1.setOnAction(e -> {
            primaryStage.setScene(scene2);
        });
 
        btn2.setOnAction(e -> {
            primaryStage.setScene(scene1);
        });
 
        primaryStage.setScene(scene1);
        primaryStage.setWidth(400);
        primaryStage.setHeight(400);
        primaryStage.setTitle("场景切换");
        primaryStage.show();
 
 
    }
}

五、Scene Builder 构建 fxml 布局

        1、首先要下载Scene Builder | JavaFx 中文官方网站

        2.Scene Builder 的使用

安装完成去idea先绑定这个程序,绑定之后就可以通过右击fxml文件然后点击在Scene Builder中打开 具体操作如下:先点击左上角文件(file)-> 搜索JavaFx->点击出现下面画面->点击箭头所指方向寻找安装的文件位置的.exe程序

创建fxml文件右击,点击在Scene Builder中打开

                

打开之后就是如下界面

我们可以在左上角Library里面查找我们想要添加的东西,然后拉至中间即可或者双击

添加按钮

添加之后我们可以在右边的code下面填入一些东西方便按钮的点击事件 填入后 软件会自动生成代码我们复制放置Controller文件里面即可

记得在fxml 中把Controller 文件路径配上

一些简单的操作就完成了,想要更详细的可以去b站找视频

下面是自己做的一个简单的页面

  • 7
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值