Bonjour à tous,

Je suis actuellement novice dans l'utilisation du langage Java et je me heurte à des difficultés...

Je souhaite créer une interface avec des onglets (ce que j'ai réussi à faire) et insérer à l'intérieur de ces onglets, des courbes, des histogrammes...

J'ai réussi à créer par exemple un PieChart et les onglets, mais je n'arrive pas à insérer celui-ci à l'intérieur de cet onglet.
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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
package Projet;
 
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
 
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTabbedPane;
import javax.swing.SwingConstants;
 
import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartFrame;
import org.jfree.chart.JFreeChart;
import org.jfree.data.general.DefaultPieDataset;
 
public class WindowA extends JFrame{
 
    public WindowA(){
 
        JFrame fenetre = new JFrame(); // Nouvelle interface graphique.
        fenetre.setDefaultCloseOperation(EXIT_ON_CLOSE); // On arrête le processus JAVA après fermeture de l'interface.
        fenetre.setTitle("Ma première interface graphique");// Titre.
        fenetre.setSize(new Dimension(400,400)); // Dimensions.
        fenetre.setLocationRelativeTo(null);// Positionnement de la fenêtre sur l'écran
        fenetre.setAlwaysOnTop(false);// fenêtre au premier plan quoi qu'il advienne. Ici ce n'est pas le cas
 
        JPanel panel=new JPanel();
        panel.setBackground(Color.white);
        this.setContentPane(panel);// on prévient notre JFrame que pan sera notre Content pane ou nous pourrons inclure des composants à l'intérieur
 
        JTabbedPane onglets = new JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT);// placé en bas. et barre de defilement si pas assez place en ligne
 
        JPanel onglet1 = new JPanel(); // On crée le panel qui va contenir l'onglet
        JLabel titreOnglet1 = new JLabel("Energy Consumption today"); // Titre de l'onglet
        onglet1.add(titreOnglet1);// On lui ajoute ce titre à l'intérieur de l'onglet
        onglet1.setPreferredSize(new Dimension (400,900));// Dimension de l'onglet.
        onglets.add("Energy", onglet1);
        onglet1.setBackground(Color.WHITE);
 
        JPanel onglet2 = new JPanel(); // On crée le panel qui va contenir l'onglet
        JLabel titreOnglet2 = new JLabel("Electrical consumption"); // Titre de l'onglet
        onglet2.add(titreOnglet2);// On lui ajoute ce titre
        // Comment ajouter une icone ?
        onglet2.setPreferredSize(new Dimension (300,80));// Dimension de l'onglet.
        onglets.add("Electrical consumption", onglet2);
        onglet2.setBackground(Color.WHITE);
 
        JPanel onglet3 = new JPanel(); // On crée le panel qui va contenir l'onglet
        JLabel titreOnglet3 = new JLabel("CO2"); // Titre de l'onglet
        onglet3.add(titreOnglet3);// On lui ajoute ce titre
        onglet3.setPreferredSize(new Dimension (300,80));// Dimension de l'onglet.
        onglets.add("CO2", onglet3);
        onglet3.setBackground(Color.WHITE);
 
        onglets.setBackground(Color.RED);    
 
        // On crée une base de données
 
        DefaultPieDataset data = new DefaultPieDataset();
        data.setValue("Categorie 1", 30);
        data.setValue("Categorie 2", 30);            
        data.setValue("Categorie 3", 40);
        //On crée la PieChart
        JFreeChart Chart=ChartFactory.createPieChart("Sample Pie Chart", data, true, true, false);
 
        //create and display a frame
 
        ChartFrame frame = new ChartFrame("JFreeChart: Fisrt.java", Chart);
        frame.pack();        
        frame.setVisible(true);
 
        panel.add(onglets);
        fenetre.add(panel);
        fenetre.setVisible(true); // On la rend visible.
    }
 
    public static void main(String[] args){
 
        WindowA fenetre=new WindowA();
    }
}
Merci d'avance et de votre temps.
Je n'ai rien essayé pour l'introduire à l'intérieur de l'onglet, mais j'ai essayé pas mal de choses avec add(), addTab(), rien ne fonctionne.

Quelqu'un saurait-il me guider un peu ?

Merci d'avance pour votre aide.