Salut à tous le monde,
J'ai une application avec une fenêtre qui contient un JDesktopPane qui lui
contient une JInternalFrame. Je voudrais que la JInternalFrame prennent la taille
de la fenêtre au lancement de l'application et que si on double click sur la barre de titre de la JINternalFrame,la taille de la fenêtre interne se réduise comme sur n'importe quel application.

voici le code:
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
 
public class ScoreCreator extends JFrame {
    private Container contentPane;
    private JDesktopPane desktopPane;
    private JInternalFrame fenetreInterne;
    public ScoreCreator(){
        super("Music Editor");        
        desktopPane = new JDesktopPane();
        desktopPane.setBackground(Color.gray);
        contentPane = this.getContentPane();
        contentPane.add(desktopPane);
        fenetreInterne = new JInternalFrame("Seconde fenêtre",true,true,true,true);        
        fenetreInterne.setSize(getSize());
        fenetreInterne.setPreferredSize(new Dimension(700,600));
        fenetreInterne.pack();    
        fenetreInterne.setVisible(true);
 
 
 
        desktopPane.add(fenetreInterne);
        setVisible(true);
    }
Le problème doit être avec les setSize() de fenêtre interne
Ici il ne démarre pas avec la taille maximal
et si:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
fenetreInterne = new JInternalFrame("Seconde fenêtre",true,true,true,true);        
 
        fenetreInterne.setPreferredSize(new Dimension(700,600));
fenetreInterne.setSize(getSize());
        fenetreInterne.pack();    
        fenetreInterne.setVisible(true);
alors dans ce cas là lors du double click la taille ne change pas.
Est-ce quelqu'un comprend la subtilité.
Ou peut peut ton m'expliquer clairement l'utilisation des
setSize()
setPreferredSize()
setMinimumSize()
setMaximumSize()
et pack()
Comment je doit les agencer pour résoudre mon problème