论坛首页 Web前端技术论坛

javaFx1.1扩展时用到的两重点类

浏览 1552 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-10-28  
javaFx1.1提供的控件少,就须要自己扩展,这时要用到两个重要的类,分别是
public abstract class javafx.ext.swing.SwingComponent
public abstract class javafx.scene.CustomNode

下面分别说明一下这两个类

SwingComponent 类是抽象类,有如下抽象方法
protected abstract createJComponent() : javax.swing.JComponent
你想javaFx扩展swing的控件的话,就须要继承这个类,就实现createJComponent() 这个抽象方法
例如http://www.iteye.com/topic/505736这个tree就继承SwingComponent .
要注意在1.1中方法的执行顺序,如:
public class FxTree extends SwingComponent { 
    init{}
    public var a=7;
    public override function createJComponent():JComponent   
    {   
         .....
         return jTree;   
    }
}

在上面这个FxTree 类中,有init{},createJComponent(),a=7 ,他们的执行顺序是:
1 createJComponent()
2 a=7
3 init{}
知道这些很重要,因为a=7晚于createJComponent()方法执行会给你带来很多麻烦,要用绑定来解决


CustomNode 类是抽象类,有如下抽象方法
protected abstract create() : Node
如果你想扩展javaFx自身的控件,就是继承这个类,并实现create() 方法

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics