1
據我所知,複製JavaFX中的節點應該使用Duplicator.duplicate
函數完成。在JavaFX中複製自定義節點
複製節點,其類型包含在JavaFX的庫時,例如
def dup = Duplicator.duplicate(Rectangle{x:30 y:30 width:100 height:100});
dup.translateX = 10;
insert dup into content;
將插入一個黑色矩形到現場,它工作正常。
但是,如果我以下列方式定義一個新類:
class MyRect extends Rectangle {}
或者
class MyRect extends CustomNode {
override function create() {Rectangle{x:30 y:30 width:10 height:10}}
}
它給了我以下運行時錯誤
Type 'javafxapplication1.NumberGrid$MyRect' not found.
這裏當然javafxapplication1.NumberGrid
是該包和檔案MyRect
班屬於。
這個人在Sun's forums有同樣的問題,但我沒有看到任何答案。
或者我正在做錯誤的方式,有更好的方法來複制自定義節點?
更新:試圖複製Group
工作,但試圖複製Stack
產生相同的錯誤。
根據文檔,它應該支持FXD
支持的所有類型,包括Node
,但也許它只支持一些Node
的後代?
沒有答案,但HTTP://forums.sun .com/thread.jspa?forumID = 932&threadID = 5406575是相關的,至少對於Stack的評論。 – PhiLho