现在Java 桌面应用程序能做到什么程度(Spring Boot+JavaFX2开发)
作者:@pdai
本文为作者原创,转载请注明出处:https://www.cnblogs.com/pengdai/p/11769194.html
Spring Boot - JavaFX 2.0应用
很多人对Java开发native程序第一反应还停留在暗灰色单一风格的Java GUI界面,开发方式还停留在AWT或者Swing。本文主要基于SpringBoot和JavaFX开发一个Demo给你展示Java Native应用可以做到什么样的程度。当然JavaFX 2.0没有流行起来也是有原因的,而且目前native的选择很多,前端是个框架都会搞个native... @pdai
最全的Java后端知识体系 https://www.pdai.tech, 每天更新中...。
技术背景 - Java 8的新特性之JavaFX2.0
全新现代主题:Modena
新的Modena主题来替换原来的Caspian主题。不过在Application的start()方法中,可以通过setUserAgentStylesheet(STYLESHEET_CASPIAN)来继续使用Caspian主题。
参考http://fxexperience.com/2013/03/modena-theme-update/
用于 CSS 结构的公共 API
- CSS 样式设置是 JavaFX 的一项主要特性
- CSS 已专门在私有 API 中实现(com.sun.javafx.css 软件包)
- 多种工具(例如 Scene Builder)需要 CSS 公共 API
- 开发人员将能够定义自定义 CSS 样式
WebView 增强功能
- Nashorn JavaScript 引擎 https://blogs.oracle.com/nashorn/entry/open_for_business
- WebSocket http://javafx-jira.kenai.com/browse/RT-14947
- Web Workers http://javafx-jira.kenai.com/browse/RT-9782
JavaFX Scene Builder 2.0
可视化工具,加速JavaFX图形界面的开发:
JavaFX Scene Builder如同NetBeans一般,通过拖拽的方式配置界面,待完成界面之後,保存为FXML格式文件,此文件以XML描述物件配置,再交由JavaFX程式处理,因此可減少直接以JavaFX编写界面的困難度。
JavaFX Scene Builder 2.0新增JavaFX Theme预览功能,菜单「Preview」→「JavaFX Theme」选择不同的主題,包括:
- Modena (FX8).
- Modena Touch (FX8).
- Modena High Contrast – Black on White (FX8).
- Modena High Contrast – White on Black (FX8).
- Modena High Contrast – Yellow on Black (FX8).
- Caspian (FX2).
- Caspian Embedded (FX2).
- Caspian Embedded QVGA (FX2).
JavaFX 3D
在JavaFX8中提供了3D图像处理API,包括Shape3D (Box, Cylinder, MeshView, Sphere子类),SubScene, Material, PickResult, LightBase (AmbientLight 和PointLight子类),SceneAntialiasing等。Camera类也得到了更新。从JavaDoc中可以找到更多信息。
富文本
强化了富文本的支持
TreeTableView
TreeTable支持
日期控件DatePicker
增加日期控件
Spring Boot+JavaFX2 Demo介绍
程序加载 - Loader
和WEB一样风格的GUI
对话框 - Popup
Web应用嵌入 - Webview
多种主题切换 - Theme
消息及配置悬浮框 - Message/Configuration...
全屏最大化最小化 - FullScreen/Max/Min/Close
包括全屏是基于JavaFX的一个组件,不是原生。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性