JavaFx1.0发布随想

对我来说,Javafx1.0发布,很重要的就是UI控件体系结构的调整,可以说javafx从最初发布到现在,这一块变化是最大的。一路跟过来的同志们都可以明显的感觉到,不同的阶段,你能找到的相关文档上的API变化非常大。

最早javafx发布的时候,宣传口号是更好用的swing,当时我就觉得这是搞错了方向了,那个时候的javafx要想在scene上放一个控件,还需要搞在专门的包装器,麻烦的要命。

当时我就想,javafx应该把他的控件体系纳入到Node下面,这是趋势,就像sliverlight终于在2.0版本加入许多控件一样。网上很多大牛的文档都是关于如何使用CustomerNode自己来做控件的,这类文章很多,可见开发人员的需求方向。
javafx1.0,sun终于做出了进步,所有javafx.ext.swing包下面的控件,现在都是Node了,而且默认采用了nimbus风格。为什么就是nimbus?因为nimbus是个基于矢量的ui风格,正好配合javafx。微软为了wpf,是重写了所有控件的,sun想就换个矢量风格就能搞定。这一方面说明了swing的强大,另一方面,我们也能看到,SUN选择了一条和微软不同的道路,尽量复用,而不是推倒重来。不过,nimbus 这个风格,毕竟还是在swing上玩的,有很多特性不支持,比如skin。

我个人还是希望sun能用javafx技术重写所有控件,而不是现在这个半调子的矢量控件nimbus。本来我以为,SUN既然有了 NIMBUS,应该不会重写了,不过呢,我又在javafx.scene.control包下面发现了Skin,TextBox,Control,这个包下面应该是一套用javafx重写的控件体系,还能支持Skin,看来sun还是有这个考虑的,架子已经搭出来了,只是个时间问题。

现在,我们发现,原来sun怎么要要在jse6u10里面加入numbus风格的原因,还是为了javafx铺路。

把控件都归入到Node体系下有什么好处呢,看看Node都有些什么功能就明白了:
javafx的画布scene就是一个Node形成的属性结构
每个Node都有个ID,scene可以通过ID来定位任意的Node
Node包含一个坐标系统
Node支持坐标变化(Translate,rotate,scale等等)
Node支持特效,动画等等

一旦控件纳入到Node体系下,就可以当做一个Node来使用,更好的融入真个Javafx平台下了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值