Pour autant que je sache, la duplication de noeuds dans JavaFX doit être effectuée avec la fonction Duplicator.duplicate
.Duplication de noeuds personnalisés dans JavaFX
Il fonctionne très bien lors de la duplication des nœuds dont les types sont inclus dans la bibliothèque JavaFX, par exemple
def dup = Duplicator.duplicate(Rectangle{x:30 y:30 width:100 height:100});
dup.translateX = 10;
insert dup into content;
insérerait un rectangle noir sur la scène.
Cependant, si je définis une nouvelle classe de la façon suivante:
class MyRect extends Rectangle {}
Ou
class MyRect extends CustomNode {
override function create() {Rectangle{x:30 y:30 width:10 height:10}}
}
Il me donne l'erreur d'exécution suivant
Type 'javafxapplication1.NumberGrid$MyRect' not found.
Où bien sûr javafxapplication1.NumberGrid
sont le paquet et le fichier de la classe MyRect
est.
Ce type à Sun's forums avait le même problème, mais je ne vois aucune réponse là-dedans.
Ou peut-être que je fais cela dans le mauvais sens, et il y a une meilleure approche pour dupliquer des nœuds personnalisés?
mise à jour: Essayer de reproduire Group
travaillé, mais en essayant de reproduire Stack
donne la même erreur.
Selon la documentation, il est censé soutenir tous les types pris en charge dans FXD
y compris Node
, mais peut-être il ne supporte que certains des descendants de Node
?
Pas de réponse, mais http: //forums.sun .com/thread.jspa? forumID = 932 & threadID = 5406575 est lié, au moins pour la remarque Stack. – PhiLho