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

baziz Messages postés 6 Date d'inscription jeudi 13 mars 2003 Statut Membre Dernière intervention 23 avril 2003 - 12 avril 2003 à 15:29
cs_benyoucef Messages postés 1 Date d'inscription dimanche 17 avril 2005 Statut Membre Dernière intervention 17 avril 2005 - 17 avril 2005 à 14:25
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

cs_Duss Messages postés 890 Date d'inscription lundi 8 avril 2002 Statut Membre Dernière intervention 29 juillet 2004 11
12 avril 2003 à 20:02
salut,
si une arborescence de type JTreee te convient,
regarde cette source
Duss
0
baziz Messages postés 6 Date d'inscription jeudi 13 mars 2003 Statut Membre Dernière intervention 23 avril 2003
12 avril 2003 à 20:14
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
0
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
13 avril 2003 à 01:35
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 | |
|_________|________|_______|________|_________|
0
cs_dragon Messages postés 2336 Date d'inscription samedi 14 juillet 2001 Statut Membre Dernière intervention 5 mai 2009 6
13 avril 2003 à 01:38
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....|..............|
|_________|________|_______|________|_________|
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
baziz Messages postés 6 Date d'inscription jeudi 13 mars 2003 Statut Membre Dernière intervention 23 avril 2003
15 avril 2003 à 13:17
Merci pour l'idée !
A+
0
CoreBreaker Messages postés 540 Date d'inscription dimanche 23 mars 2003 Statut Membre Dernière intervention 5 octobre 2007 1
16 avril 2003 à 21:28
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 :)
0
baziz Messages postés 6 Date d'inscription jeudi 13 mars 2003 Statut Membre Dernière intervention 23 avril 2003
22 avril 2003 à 17:50
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 !
0
lizarajim Messages postés 16 Date d'inscription mardi 28 mai 2002 Statut Membre Dernière intervention 24 octobre 2006
21 janv. 2004 à 11:24
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 (-;
0
cs_benyoucef Messages postés 1 Date d'inscription dimanche 17 avril 2005 Statut Membre Dernière intervention 17 avril 2005
17 avril 2005 à 14:25
salut ; comment dessiner un reseau de petri en java?
0
Rejoignez-nous