早期的JavaFX API非常不稳定,但是现在,其API是成熟稳定的。向后兼容性对于Java语言来说非常重要,因此,程序员不应该期望在官方的JavaFX API中进行大量实验。有许多第三方举措,如ControlsFX和JFXtras,其中包含高级或特定的UI控件和小部件,对程序员来说非常有用。JavaFX社区包含大量积极的程序员,他们愿意贡献自己的想法和代码。通过官方提供JavaFX的稳定性和成熟度,结合社区成员的热情和贡献,JavaFX将成为Java程序员进行UI开发的绝佳选择。
JavaFX API详解之Window
其中Window类可理解成一个窗体,用于存放Scene,并与用户 *** 作。一般window作为窗体,都用其子类Stage和PopupWindow。
看一下Window作为窗体的顶级类包含的一些共同属性
eventDispatcher setEventDispatcher(EventDispatcher value)
focused: 焦点集中 setFocused(boolean)设置
x y width height: 位置及大小 setX(double),setY(double),setWidth(double),setHeight(double) 设置
onCloseRequest 关闭Window事件 setOnCloseRequest(EventHandler)
onHidden 隐藏事件 setOnHidden(EventHandler)
onHiding 隐藏事件,优先于OnHidden setOnHiding(EventHandler)
onShowing 显示事件 setOnShowing(EventHandler)
onShown 显示事件,在OnShowing之后 setOnShown(EventHandler)
opacity 透明 setOpacity(double) 值为0到1
scene 设置场景 setScene(Scene)
showing 是否是显示状态 isShowing()
Window的一些方法:
addEventFilter(EventType eventType, EventHandler eventFilter) 添加事件过滤
removeEventFilter(EventType eventType, EventHandler eventFilter)
addEventHandler(EventType eventType, EventHandler eventHandler) 添加事件
removeEventHandler(EventType eventType, EventHandler eventHandler)
buildEventDispatchChain(EventDispatchChain tail)
centerOnScreen() 使Window显示中间
hide() 隐藏 实际就是关闭
show() 保护类型 显示window
requestFocus() 要求焦点集中
sizeToScene() 使Window的大小匹配它Scene的大小。如果你没有设置Window大小的话,那么就是刚好匹配的(匹配不等于相等了,window始终要大Scene一些)。若果你设置了window大小,在调用该方法,则会改变window的大小以匹配Scene大小。 最好的例子是,你设置window大小,而不设置Scene大小,再调用该方法。
fireEvent(Event event) 调用指定的事件
Stage作为顶级容器,其主Stage由系统创建。额外的可由应用程序创建。
fullScreen 是否全屏,该属性类型为ReadOnly,不可绑定。 setFullScreen(boolean) 虽然是全屏 但是width,height等属性值仍不变,若在全屏的时候改变这些值,返回原来状态的时候,使用改变后的值。
iconified 是否最小化 setIconified(boolean)
resizable 设置大小是否变化 setResizable(boolean) 为true则不能拉动stage的大小
一、使用javafxpackager
javafxpackager是javafx提供的打包工具,好像从jdk17开始就包含这个工具了,它在 jdk 的 bin 目录下。
第一步:新建两个文件夹
一个放入你想打包的jar,另一个用来存放打包生成的exe,注意所有目录、jar、exe名字都不要带空格。
第二步:开始打包
在 jdk 的 bin 目录下运行cmd,输入javafxpackager,可以看到可用的参数,如下图
我们使用deploy命令,大部分参数一般都是用不到的
我们可以使用下面的参数简单打包
javafxpackager -deploy -native image -appclass testTest -srcdir E://test1 -outdir E://test2 -outfile test -name testName
要按实际情况修改的,-appclass是包含main函数的类,要写出包名。
成功以后出现这样的提示
在test2目录下会出现这些文件,bundles文件夹里就是已经打包好的exe文件了
以上就是关于Swing那么受欢迎,为什么JavaFX屡被唱衰全部的内容,包括:Swing那么受欢迎,为什么JavaFX屡被唱衰、javaFX调用windows应用、如何将JavaFX程序打包成exe等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)