javaFX的使用
目录
javafx图形化界面软件安装
软件使用
JavaFX 的核心思想
项目组成:
javafx图形化界面使用
模块介绍
布局
编辑
一个小案例
其他操作
UI控件
问题:缺少 JavaFX 运行时组件
原因:jdk 11 后,JavaFX 包被剥离出来了,创建 Java Applicattion 时需要手动添加依赖包,添加 VM options参数
解决:
javafx图形化界面软件安装
Scene Builder - Gluon 官网下载新版即可
软件使用
JavaFX 的核心思想
每个 JavaFX 应用程序都必须继承自 Application
类,并且需要满足以下条件:子类必须声明为 public
,同时必须提供一个公共的无参数构造函数。JavaFX 应用程序的启动过程遵循以下步骤:
- 启动 JavaFX 运行时环境:这是 JavaFX 应用程序运行的基础。
- 创建 Application 类的实例:系统会实例化你的应用程序类。
- 调用
init()
方法:在启动主线程之前,会先执行init()
方法,用于初始化资源或执行一些准备工作。 - 调用
start(Stage)
方法:这是应用程序的主入口点,会创建一个初始窗口(Stage
)并设置场景(Scene
)。 - 等待应用程序结束:JavaFX 应用程序会持续运行,直到满足以下条件之一:
- 显式调用
Platform.exit()
方法。 - 最后一个窗口被关闭,并且
implicitExit
属性为true
。
- 显式调用
- 调用
stop()
方法:在应用程序完全退出之前,会执行stop()
方法,用于释放资源或执行清理操作。
通过这种方式,JavaFX 确保了应用程序的生命周期清晰可控,同时提供了灵活的线程模型来支持图形界面的高效渲染和用户交互。
项目组成:
一个javafx项目包括:
一个Main.java(javafx入口文件)
多个FXML文件(多个展示的页面)
多个Controller文件(用来控制事件交互的文件)
javafx图形化界面使用
JavaFX Scene Builder 是一个可视化布局工具,用于快速设计和构建 JavaFX 应用程序的用户界面(UI)。它允许开发者通过拖拽组件(如按钮、标签、文本框等)来创建复杂的界面,而无需手动编写 FXML 或 Java 代码。
打开JavaFX Scene Builder后将idea上的FXML文件拖动到JavaFX Scene Builder上打开JavaFX Scene Builder
模块介绍
主要分为四个区域元素对象选择区(元素库)、预览展示区、控件属性区域、层次结构区。
布局
打开一个页面一般都要新建一个布局容器,所有的组件只能放在布局容器上
放置一个简单的button按钮后,按ctrl+s保存修改
这时对应的fxml文件会自动发生变化:
一般组件最常用的就是fx:id和On Action
fx:id(定义组件唯一id,用来操纵某个组件,一个页面里id唯一不可重复)
On Action:设置组件的点击事件
一个小案例
这里设置了button按钮的id和点击事件,ctrl+s保存好后,点击视图显示示例控制器骨架,可直接复制相关的id和事件
展示效果:
其他操作
关闭窗口:
切换窗口
UI控件
Scene Builder 详细的教程以及各种组件,方法,属性的使用可看博客:JavaFX之Scene Builder详细使用说明之组件篇(2)——常用组件-CSDN博客
博客专栏大概有十篇左右,可挑选自己有用的看。
问题:缺少 JavaFX 运行时组件
原因:jdk 11 后,JavaFX 包被剥离出来了,创建 Java Applicattion 时需要手动添加依赖包,添加 VM options参数
解决:
手动下载jar包(注意版本要>=自己的java版本,系统位数)
下载完解压后点击项目结构:
点击模块,导入库
选择新建库,然后导入刚才解压的文件下的lib文件夹
之后添加所选项,勾选,应用,确定
再之后打开编辑配置,点击修改选项,添加虚拟机选项
将这串命令输入(红色部分填写自己的路径)
--module-path "D:\javafx\openjfx-22_windows-x64_bin-sdk\javafx-sdk-22\lib" --add-modules javafx.controls,javafx.fxml
即可运行: