Affichage sur un Panel d'un autre JFrame
Merci beaucoup, j'ai vraiment aimé
Grâce à cet article, j'ai réussi à afficher les graphes des réseaux de Petri.
Mais, le problème c'est que je n'arrive pas à afficher le graphe sur un panel d'un autre Jframe
Voici le code que j'ai utilisé
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
public class Graphe_Hello_World
{
MyFrame frame;
//Le constructeur
public Graphe_Hello_World(MyFrame f)
{
super();
mxGraph graph = new mxGraph();
frame = f;
//On récupère la racine du graphe
Object parent = graph.getDefaultParent();
//On commence la création des noeuds
graph.getModel().beginUpdate();
try
{
Object v1 = graph.insertVertex(parent, null, "Hello", 300, 40, 40, 40);
Object v3 = graph.insertVertex(parent, null, "World", 300, 90, 40, 40);
graph.insertEdge(parent, null, "Edge", v1, v3);
}
finally
{
graph.getModel().endUpdate();
}
mxGraphComponent graphComponent = new mxGraphComponent(graph);
frame.add_graph(graphComponent);
} |
Et j'ai implémenté dans le JRame MyFrame la méthode add_graph
Code:
1 2 3 4 5 6 7 8 9
|
public void add_graph(mxGraphComponent g_component)
{
panel_graphe.add(g_component);
panel_graphe.repaint();
panel_graphe.revalidate();
this.repaint();
this.revalidate();
} |
Et j'ai ajouté un bouton dans MyFrame, je veux que lorsqu'on clique sur ce bouton le graphe s'affiche, pour cela j'ai ajouté l'event
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
try
{
Graphe_Hello_World hw = new Graphe_Hello_World(this);
}
catch(Exception e)
{
System.out.println("Erreur lors de la génération du graphe");
}
} |
Mais lorsque je clique sur le bouton ça n'affiche rien.
Est-ce que vous pouvez m'aider SVP c'est urgent.
Merci.