Cherche des idées pour afficher un graphe (arborescence) en java

Signaler
Messages postés
6
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
23 avril 2003
-
Messages postés
1
Date d'inscription
dimanche 17 avril 2005
Statut
Membre
Dernière intervention
17 avril 2005
-
Bonjour,

je cherche à afficher en java une structure arborescente :

O
/ | \
O O O
|
O
/ | \
O O O
/ \ \
O O O

les données (contenu des noeuds) sont dans un fichier xml (si ça peut facilter la tâche).

Mille mercis au(x) répondeur(s).

9 réponses

Messages postés
890
Date d'inscription
lundi 8 avril 2002
Statut
Membre
Dernière intervention
29 juillet 2004
12
salut,
si une arborescence de type JTreee te convient,
regarde cette source
Duss
Messages postés
6
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
23 avril 2003

Salut,
Merci beaucoup pour ta réponse, à vrai dire je cherche une représentation graphique verticale(noeud racine vers le haut et les feuilles vers le bas).

mon stagiaire (qui est venu du quebec) est chargé de dévelloper cette interface, comme c'est fastidieux de dessiner tous ça en java (à ma connaissance), je cherche des choses déjà faites sur ça mais pas du genre explorateur de fichier.

Merci et à la prochaine !
baziz
Messages postés
2336
Date d'inscription
samedi 14 juillet 2001
Statut
Membre
Dernière intervention
5 mai 2009
6
si ça te tente de te cassé la tête, la seule façon de si prendre, serais d'utiliser les gridLayout horizontale et vertical.

un gros avec des Layout horizontale, ensuite, à l'intérieur de chaque layout horizontale créer des layout verticale

puis à l'aide d'un tableau (arrayList surement pour pouvoir le mettre de grandeur variable) connaitre le milieu de chaque layout vertical pour les relier avec le bon

comme ça pour chaque noeud a ajouter, il faudrais savoir si c'est le noeud le plus bas:
si oui, ajouter un layout horirontal et un nombre X de layout vertical
sinon si le layout au bon endroit est vide l'ajouté là
sinon ajouter un layout vertical à tout les layout horizontale pour garder l'arbre centré

et enfin, refaire les lien entre les layout verticale

ça pourrais ressembler à ça, moins les lignes

les caractères " | | " représente un gridLayout horizontale

et les " ___________________

___________________ " les gridLayout verticale

______________________________________________
| | | 1 | | |
|_________|________|_______|________|_________|
| | 2 | | 3 | |
|_________|________|_______|________|_________|
| | | 4 | | 5 |
|_________|________|_______|________|_________|
| | 6 | | 7 | |
|_________|________|_______|________|_________|
Messages postés
2336
Date d'inscription
samedi 14 juillet 2001
Statut
Membre
Dernière intervention
5 mai 2009
6
si ça te tente de te cassé la tête, la seule façon de si prendre, serais d'utiliser les gridLayout horizontale et vertical.

un gros avec des Layout horizontale, ensuite, à l'intérieur de chaque layout horizontale créer des layout verticale

puis à l'aide d'un tableau (arrayList surement pour pouvoir le mettre de grandeur variable) connaitre le milieu de chaque layout vertical pour les relier avec le bon

comme ça pour chaque noeud a ajouter, il faudrais savoir si c'est le noeud le plus bas:
si oui, ajouter un layout horirontal et un nombre X de layout vertical
sinon si le layout au bon endroit est vide l'ajouté là
sinon ajouter un layout vertical à tout les layout horizontale pour garder l'arbre centré

et enfin, refaire les lien entre les layout verticale

ça pourrais ressembler à ça, moins les lignes

les caractères " | | " représente un gridLayout horizontale

et les " ___________________

___________________ " les gridLayout verticale

______________________________________________
|..............|............|....1.....|............|..............|
|_________|________|_______|________|_________|
|.............|.....2.......|..........|....3......|..............|
|_________|________|_______|________|_________|
|.............|.............|....4......|...........|.....5......|
|_________|________|_______|________|_________|
|.............|.......6....|..........|......7....|..............|
|_________|________|_______|________|_________|
Messages postés
6
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
23 avril 2003

Merci pour l'idée !
A+
Messages postés
540
Date d'inscription
dimanche 23 mars 2003
Statut
Membre
Dernière intervention
5 octobre 2007
1
Si tu as Internet Explorer 6.0 double-clique sur le fichier XML.
IE6 formate le fichier XML, ça te donnera sans doute une idée

Tu peux utiliser la classe javax.swing.JTree

Core Breaker :)
Messages postés
6
Date d'inscription
jeudi 13 mars 2003
Statut
Membre
Dernière intervention
23 avril 2003

Merci, ça marche.
Maintenant j'ai un autre pb.

dans la page html, l'arborescene que l'applet affiche est coupée (car elle déborde de la page en largeur).

comment afficher une applet trop grande dans une page html. est ce qu'il y a un moyen d'afficher le scroll bar dans la page html si l'affichage de l'applet est trop large ?

Merci d'avance !
Messages postés
16
Date d'inscription
mardi 28 mai 2002
Statut
Membre
Dernière intervention
24 octobre 2006

Salut,
j'ai exactement le même projet à réaliser çàd afficher un graphe en java.
Pourrais-tu me dire si l'utilisation des GridLayout est faisable ou si le Jtree est plus adapté bien que moins lisible ???
Merci d'avance.

;-) Lizarajim (-;
Messages postés
1
Date d'inscription
dimanche 17 avril 2005
Statut
Membre
Dernière intervention
17 avril 2005

salut ; comment dessiner un reseau de petri en java?