IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaFX Discussion :

[GROUP] Inséré le contenu d'un Group dans un autre


Sujet :

JavaFX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 34
    Par défaut [GROUP] Inséré le contenu d'un Group dans un autre
    Bonjour à tous et à toutes,

    J'ai encore une question.
    Je voudrais insérer un "group" que j'appellerais graph contenant une courbe ( ce group étant associé à un clip afin de généré une animation) à un autre group que je nommerais "render" qui contient déjà un quadrillage.

    Je voudrais au final, pouvoir jouer sur les endroits où je veux afficher mon graph et pouvoir faire une animation sur plusieurs "render".

    Quand j'essai d'associé mon graph à un render de cette manière

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     insert graph1 into render1.content;
    J'ai l'erreur suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    java.lang.IllegalArgumentException: illegal assignment of group.content: group=Group node=Group
    Normal me dirais vous, impossible d'inserer un group dans un group. Alors j'ai penser insérer uniquement le contenu de graph dans le conteneur render

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    insert graph1.content into render1.content;
    J'ai l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    WARNING * WARNING * WARNING * WARNING * WARNING
    An attempt has been made to add node to a new group without
    first removing it from its current group. See the class
    documentation for javafx.scene.Node for further information.
    This request will be granted temporarily but it will
    be refused in the future. Please change your code now.
    node=Polyline oldgroup=Group newgroup=Group
    Stack trace follows.
    Cette erreur je ne l'ai pas compris, quelqu'un pourrais t'il m'éclairer de sa lanterne ?

    Je pense que c parce que j'essaie d'insérer plusieurs fois le même contenu dans le même conteneur. Mais comment fait-on pour delete juste le contenu que l'on viens d'ajouter, parce qu'un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    delete render1.graph1.content
    Ne fonctionne pas...

    Bouye par exemple, sans vouloir trop t'en demander

    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 900
    Billets dans le blog
    54
    Par défaut
    Tout d'abord :
    1) on peut tout à fait mettre un Group dans un Group.
    2) Quelle version de JavaFX tu utilises ?

    Car ce message semble typique des version 1.2 (et 1.1 ? Je ne sais plus, ça date...) dans lesquelles il faut effectivement retirer un Node de son parent avant de l'inclure dans un autre parent.

    genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    delete myNode from (myNode.parent as Group).content;
    Ce qui peut bien sur foirer pour des tas de raisons : binding, le parent n'est pas un Group (ça arrive souvent dans du vieux code porté en 1.3 puique les layouts ne sont désormais plus des Group mais des Container ), voir carrement c'est une Scene, etc.

    En 1.0 et en 1.3 il n'y a pas besoin de le faire, le retrait du parent est automatique (hors binding), la seule exception que j'ai trouvé pour le moment est le contenu d'un ScrollView je crois.

    Sinon je te rappelle que sans code on ne peut pas grand chose non-plus.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 34
    Par défaut
    Je suis en version 1.2.1 (bouye champion du monde qui arrive à trouver la version en fonction des erreurs sur la console ) !

    Un petit extrait de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    if (render == 1){
    if (passage == 0){
                 insert getgraph(0,larg/echelle) into graph1.content;
                 graph1.clip = Clip1;
                 insert graph1.content into render1.content;
             }else{
                delete graph1.content; delete graph2.content;
                insert getgraph((larg*(passage-1))/echelle,(larg*passage)/echelle)into graph1.content;
                insert getgraph((larg*passage)/echelle,(larg*(passage+1))/echelle) into graph2.content;
                graph1.clip = Clip2; graph2.clip = Clip1;
               insert graph1 into render1.content;
               insert graph2 into render1.content;
             }
    }else{
    ...
    // Ici je met mon graph 1 et 2 alternativement sur mes render1 et 2
    }
    La fonction getgraph me donne ma courbe de polyline

  4. #4
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 34
    Par défaut
    Malheuresement comme tu l'as dit plus haut ça peut merdé...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    delete graph1 from (graph1.parent as Group).content;
    delete graph2 from (graph2.parent as Group).content;
    J'ai toujours ma première erreur...

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2010
    Messages : 34
    Par défaut
    Bon finalement j'ai résolu mon problème. J'ai un nombre de render limité à laquelle j'associe 2 graph à chaques fois.

    J'ai déclarer les graph dont j'ai besoin et basta, tant pis pour la ram

    Merci quand même

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajouter le contenu d'un fichier dans un autre
    Par persia dans le forum Langage
    Réponses: 3
    Dernier message: 12/03/2007, 09h37
  2. Réponses: 6
    Dernier message: 23/05/2006, 13h28
  3. Réponses: 1
    Dernier message: 15/05/2006, 17h36
  4. Importer le contenu un fichier xml dans un autre fichier xml
    Par gedeon555 dans le forum XML/XSL et SOAP
    Réponses: 5
    Dernier message: 27/07/2005, 11h49
  5. [LG]Ecrire le contenu d'un fichier dans un autre
    Par lucke dans le forum Langage
    Réponses: 10
    Dernier message: 26/04/2003, 20h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo