从JavaFX 1.3迁移到JavaFX 2.0
我想指出,如果您想继续在JavaFX 2.0中使用JavaFX脚本,则可以使用Visage: http : //code.google.com/p/visage/
- CustomNode类不再存在。 扩展组或区域以创建“自定义节点”。
- 没有更多的块鼠标。
在javafx 2.0中,鼠标事件仅由最顶部的节点接收。Node上还有一个新方法:setMouseTransparent(boolean)。 将mouseTransparent设置为true的节点上的鼠标事件将被下面的最高节点忽略并捕获。
- 使用属性绑定值。
Javafx 2.0具有一组可以用来将值彼此绑定的类。 对于每种基本类型,都有一个类– SimpleBooleanProperty,SimpleDoubleProperty等,对于引用类型,您可以使用对象属性实例,例如,如果您要绑定颜色,则可以使用SimpleObjectProperty <Color>。
- 并非API中的所有变量都是“可绑定的”。
在Javafx 1.3脚本中,您可以绑定到API的任何变量。 在javafx 2.0 Java语言中,这意味着API中的所有变量都必须作为属性可用。 但是事实并非如此,例如Bounds,LinearGradient,Stop是不具有属性的类的示例,因此您不能直接绑定到其字段。 在这种情况下,您需要使用其他方法,例如底层绑定 。例如,假设您想将变量绑定到节点的布局边界的宽度。 由于Bounds的字段宽度不能作为属性使用,因此您必须执行以下操作:
在Javafx脚本中:
float nameLabelXPosition = bind - nameLabel.layoutBounds.width / 2;
在Javafx2.0 Java语言中:
nameLabelXPosition.bind(new DoubleBinding() {{super.bind(nameLabel.layoutBoundsProperty());}@Overrideprotected double computeValue() {return nameLabel.getLayoutBounds().getWidth() / 2;}});
- 使用javafx脚本initiliazer块时,现在可以使用javafx 构建器 。
但是,在javafx脚本中,您可以在初始化程序块中使用绑定,而在Java上,不能使用构建器来进行绑定。 只有在JavaFX 3.0(Lombard)中,您才能做到这一点: http : //javafx-jira.kenai.com/browse/RT-13680 。 因此,每当在javafx脚本初始化程序块上使用绑定时,就不能在java javafx 2.0中使用构建器。
- 在Javafx 2.0 Java上不再对序列提供语言级别的支持。
无论您在何处使用序列,现在都将使用ObservableLists。 要创建ObservableLists,可以使用FXColections创建器方法,在那里您会找到各种各样的方法来创建ObservableLists,甚至是空的方法。API上存在的序列已转换为ObservableLists。 例如,如果要在Group上插入节点,则需要获取其子节点ObservableList,然后调用方法add。 像这样:.getChildren()。add(Node)
- 没有更多的功能类型。
由于仅在java8上支持Closures,因此Oracle团队依赖于使用SAM类型。 那是一个类,只有一个您必须要重写的抽象方法(单一抽象方法)。 您可以使用与Oracle相同的策略,并在使用函数对象的任何地方编写SAM类型。
- 没有更多的触发器。
用变更侦听器替换触发器。 您可以将更改侦听器分配给与在Javafx脚本上分配触发器相同的属性。
- 子类上没有更多的变量覆盖。
对于这些,您将无法在Java上替代它,最好的事情是将值重新分配给子类上的变量。 但这并不相同,因为覆盖变量,在超类的初始化程序块之前被赋值。
有关此主题的更多信息,请参见结帐:
http://weblogs.java.net/blog/opinali/archive/2011/05/28/javafx-20-beta-first-impressions
如果您对此主题没有其他更有价值的提示,请在评论中添加它们,然后将它们插入帖子中。
参考: Pixel Duke博客上的JCG合作伙伴 Pedro Duque Vieira 从javafx 1.3迁移到javafx 2.0 。
相关文章 :
- JavaFX 2.0 beta示例应用程序和思考
- JavaOne正在重建动力
- 有时在Java中,一个布局管理器是不够的
- Xuggler开发教程
翻译自: https://www.javacodegeeks.com/2011/12/migrating-from-javafx-13-to-javafx-20.html
从JavaFX 1.3迁移到JavaFX 2.0相关推荐
- )类 新建javafx程序时_关于JavaFX杂谈
Sun公司已于2008年12月05日发布了JavaFX技术的正式版,它使您能利用 JavaFX 编程语言开发互联网应用程序(RIA).该产品于2007年5月在JavaOne大会上首次对外公布.Java ...
- 在javafx中界面主题_最小的JavaFX演示文稿(在JavaFX中)
在javafx中界面主题 如果您要进行有关JavaFX的演示,那么使用JavaFX本身进行演示非常方便. 这样,您无需离开演示文稿即可轻松显示示例. 这是一个非常简单的示例. 在NetBeans中,设 ...
- 基于javafx的五子棋_基于JavaFX的SimpleDateFormat演示程序
基于javafx的五子棋 对于使用Java Date进行格式化的新手,甚至对于使用Java Date进行格式化的新手,对于有经验的Java开发人员来说,可能都会有些棘手,其中之一就是使用SimpleD ...
- 最小的JavaFX演示文稿(在JavaFX中)
如果您想进行有关JavaFX的演示,那么使用JavaFX本身进行演示非常方便. 这样,您无需离开演示文稿就可以轻松显示示例. 这是一个非常简单的示例. 在NetBeans中,设置一个新的JavaFX项 ...
- JavaFx教程-02第一个javaFX程序
本节,我将采用渐进的.循序渐进的方法来解释如何写出第一个JavaFX应用程序. 程序主框架 任何一个JavaFX应用程序的程序框架都如下所示: import javafx.application.Ap ...
- javafx 教程_Java验证(javafx)
javafx 教程 验证是核心javafx框架所缺少的一件事. 为了填补这一空白, controlsfx中已经存在一个第三方验证库. 但是,我有一个问题:它不是在考虑FXML的情况下创建的. 这并不是 ...
- JavaFX的:入门使用JavaFX
Hello World,JavaFX的风格 教你是什么样创建和构建JavaFX应用程序的最佳方法是用一个"Hello World"应用程序.本教程的一个额外好处是,它使您可以测试您 ...
- spock_将Spock 1.3测试迁移到Spock 2.0
spock 了解Spock 2.0 M1(基于JUnit 5)的期望,如何在Gradle和Maven中迁移到它以及为什么报告发现的问题很重要:). 重要说明. 我绝对不建议您永久将您的真实项目迁移到S ...
- 路遥工具箱全面迁移至 .NET 6.0 并发布 3.0 版本及迁移记录详解
随着 .NET 6.0 的发布 NewLife 组件也进行了升级,并在 2022 年 1 月份全面停止了对 .NET Framework 的支持框架依赖升级至 .NET Standard 2.1 . ...
最新文章
- 深入Java虚拟机——类型装载、连接(转)
- Weex 解决Print: Entry, :CFBundleIdentifier, Does Not Exist 错误方法
- mysql 分表_MySQL如何分库分表
- 世界公认的第一商人——成就犹太商人的15个信条
- matlab错误使用builtin,MATLAB环境下运行MATLAB函数时发生异常
- 英语阅读测试,很神奇吧~
- 如何在批处理文件/ cmd中休眠五秒钟[重复]
- MPLS virtual private network 地址重叠实验(华为设备)
- Linux 命令整理-tailf
- 在uniapp或者vue中,单行文字或者数字无法换行导致后面内容无法展示问题的解决方案
- 瑞友天翼应用虚拟化系统服务器lP,瑞友天翼应用虚拟化系统 V6.0.6发版
- ubuntu 安装 TM2009 QQ2013
- 一类Chen混沌系统的混沌吸引子——MATLAB实现
- 网易云音乐歌单监控 IOS捷径
- SQL优化建议(不定时更新添加)
- Java数组实现进制转换
- python setup.py install与python setup.py develop的区别
- 阿里云服务器购买折扣优惠券及注意事项
- 多线程情况下如何保证线程安全
- 六维力数据中去除重力、漂移力任务---ros之talker、listener、ur、坑
热门文章
- log4j 程序日志_Log4j错误–减慢您的应用程序
- selenium 4_Selenium4 Alpha –期望什么?
- java项目使用junit_在Java 8之前的项目中使用JUnit 5
- jdk 1.8 字符串+_JDK 9/10/11:Java字符串上+ =的副作用
- 某人想在h小时内钓到_为某人命名以重新连接到您的服务器
- java中什么时候应用异常_生产Java应用程序中的十大异常类型-基于1B事件
- jvm7 jvm8_自我修复的JVM
- java拦截器项目应用_使用拦截器分析Java EE应用程序的性能下降/提高
- 教程:用Java创建和验证JWT
- Spring应用架构