Java开发桌面程序学习——开源库 JFXUtils 让你更简单地进行JavaFX开发
Posted kexing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java开发桌面程序学习——开源库 JFXUtils 让你更简单地进行JavaFX开发相关的知识,希望对你有一定的参考价值。
JFxUtils
介绍
这是一个JFX的工具库,Intent可以简单地实现打开一个新窗口并传递数据,DialogBuilder可以简单地生成对话框,MyUtils有些常用的功能
使用
JFxUtils
与JavaFxTemplate
是配套使用的,想要使用的话,请下载JavaFxTemplate
模板
JavaFxTemplate模版已经整合了JFxUtils,直接使用即可
JavaFxTemplate项目地址
下载jar包 ,把jar包导入到项目中
下载地址
Intent的使用
使用Intent,可以打开一个新窗口,还能传递数据
如何使用?
打开一个新窗口
步骤:new一个Intent,调用start方法即可
下面是几种不同的构造方法
- Intent(Object o, String fxmlName)
- Intent(Object o, String fxmlName, String title)
- Intent(Object o, String fxmlName, String title,String iconName)
- Intent(Object o, String fxmlName, int width, int height)
- Intent(Object o, String fxmlName, int width, int height, String title)
- Intent(Object o, String fxmlName, int width, int height, String title, String iconName)
PS:
o
当前的controllerfxmlName
fxml的名字,不需要写扩展名
iconName
图标名,需要写扩展名
例子:
- 简单例子
//在一个controller中
//fxml名字为test
//默认宽高 600*400
Intent intent = new Intent(this,"test");
//打开新窗口
intent.start();
- 设置标题
Intent intent = new Intent(this,"test","hello world");
intent.start();
- 设置宽高
Intent intent = new Intent(this,"test",800,400);
intent.start();
打开新窗口并传递数据
本工具中,有一个BaseController
,想要传递数据,就得让controller
继承这个BaseController
,之后,new一个intent
,使用addData
方法传入数据
可以传递的数据类型有int
,boolean
,String
,List
,Object
- addData(String key, int data)
- addData(String key, boolean data)
- addData(String key, String data)
- addData(String key, List<?> data)
- addData(String key, Object data)
在controller中getIntent得到intent的实例,之后通过以下方法获得数据
- getDataInteger(String key)
- getDataBoolean(String key)
- getDataString(String key)
- getDataList(String key,Class
clazz) - getDataObject(String key) 需要转型
例子:
- 获得list数据
package wan.dormsystem.controller;
import java.net.URL;
import java.util.List;
import java.util.ResourceBundle;
import wan.dormsystem.bean.Student;
/**
* @author StarsOne
* @date Create in 2019/6/21 0021 16:44
* @description
*/
public class TestController extends BaseController
@Override
public void initialize(URL location, ResourceBundle resources)
//这里一定要有判断,不然会有空指针异常
if (getIntent() != null)
List<Student> list = getIntent().getDataList("list", Student.class);
for (Student student : list)
System.out.println(student.toString());
DialogBuilder
MyUtils
- closeWindow(Control control) 关闭窗口
- Image getImg(Object o, String fileName) 获得图片
- void setLinkAutoAction(Hyperlink hyperlink) 设置链接自动跳转
- void setLinkAction(Hyperlink hyperlink, LinkActionHander hander) 设置链接点击事件
更多使用详情,请下载文档查看,JFxUtils中文文档
以上是关于Java开发桌面程序学习——开源库 JFXUtils 让你更简单地进行JavaFX开发的主要内容,如果未能解决你的问题,请参考以下文章
Java开发桌面程序学习——基于Jfoenix库的JFXDialog封装仿Android对话框的工具DialogBuilder
Python如何进行GUI桌面开发?都有哪些不错的库可以推荐?