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

Eclipse Platform Discussion :

[RCP] Problème de refresh TreeViewer


Sujet :

Eclipse Platform

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Par défaut [RCP] Problème de refresh TreeViewer
    Bonjour !

    En fait j'ai un soucis avec mon TreeViewer ..
    En effet, lors d'une modification je voudrais que celui-ci se mette à jour, je pensais faire appel à la fonction refresh() mais elle ne fait rien ..
    La seule solution que j'ai trouvé, c'est de faire :
    monTreeViewer.setInput(new monInput)
    Mais dans ce cas, impossible de retrouver les noeuds qui étaient ouverts .. pourtant je les récupère avec getExpandedTreePath ou getExpandedElements mais lorsque je les réinserts dans mon TreeViewer, ca n'a aucun effet ..

    Si quelqu'un a une solution, je suis preneur parce que la, j'ai a peu pres tout essayé

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Par défaut
    Bon la je pense que c'est impossible de remettre l'arbre à jour ..

    Vu que je réinsert de nouvelles données, je pense qu'on ne peut pas reprendre l'arborescence d'un "ancien" arbre et la remettre après le setInput() ..


    Je n'en suis pas sûr mais ça me parait cohérent en y réflechissant ..
    Si quelqu'un peut, toutefois, soit me le confirmer ou bien me prouver le contraire je suis preneur !!

  3. #3
    Membre éprouvé Avatar de Tazmanian Devil
    Profil pro
    Inscrit en
    Février 2007
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 119
    Par défaut
    Forcément, si ton arbre change, ce sera impossible de réappliquer la même arborescence. D'autant plus que normallement lors du setInput, tu lui réinsere de nouveaux objets donc à mon avis même pas moyen de boucler et de retrouver les noeuds qui étaient ouverts en les comparant... Sinon, je ne vois que ca, boucler sur la liste des anciens noeuds ouvert, trouver le moyen de comparer avec les nouveaux objets que tu vient d'inserer et si ils correspondent, tu déplis. Mais je n'y crois guère, surtout si ton arborescence est complexe ...

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Par défaut
    Mon arborescence n'est pas trop complexe .. Elle ne comporte que 3 niveaux :
    - une racine invisible
    - un constructeur
    - un matériel
    Je n'avais pas pensé à le faire comme ca .. mais c'est vrai que si je peux récupérer si le noeud est ouvert ou non pour l'arbre je peux ensuite le réappliquer ..

    Encore merci !

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Par défaut
    Après toute un matinée à prendre le problème dans tous les sens j'abandonne ..

    Voilà ou j'en suis actuellement ..

    Je peux récupérer sans problèmes les noeuds ouverts, récupérer leurs noms afin de les comparer aux nouveaux noeuds de mon arbre .. mais le problème est que je n'arrive pas à récupérer les nouveaux noeuds .. donc impossible de réafficher l'arborescence telle qu'elle était avant le setInput() ..

    J'ai tout essayé ou presque ..



    Malgrès tout, si quelqu'un à une solution .. je suis toujours preneur ^^
    Merci !

  6. #6
    Membre confirmé
    Inscrit en
    Octobre 2005
    Messages
    103
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Octobre 2005
    Messages : 103
    Par défaut
    Bonjour,

    As-tu crée ton TreeViewer avec le modèle MVC (ContentProvider, LabelProvider, Listener) ?

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    122
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2007
    Messages : 122
    Par défaut
    oui oui il est créé sur ce type de modèle !

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

Discussions similaires

  1. Problème de refresh
    Par squallJ dans le forum Oracle
    Réponses: 2
    Dernier message: 17/01/2006, 16h28
  2. [RCP]IAdapterFactory pour peuplé treeviewer
    Par david06600 dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 09/01/2006, 13h23
  3. problème de refresh sur une DBGrid
    Par lidouka dans le forum Bases de données
    Réponses: 4
    Dernier message: 20/12/2005, 17h12
  4. [TColorBox] : problème de refresh
    Par PpPool dans le forum Composants VCL
    Réponses: 4
    Dernier message: 12/08/2005, 11h09
  5. Problème avec Virtual Treeview
    Par bisounoursbleu dans le forum Composants VCL
    Réponses: 6
    Dernier message: 06/12/2004, 15h37

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