IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Problème d'agrandissement d'un JPanel


Sujet :

AWT/Swing Java

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2011
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2011
    Messages : 11
    Par défaut Problème d'agrandissement d'un JPanel
    Bonjour,

    J'ai un problème d'agrandissment ave ma fenetre. Lorsque je clique sur le bouton agrandir en haut de la fenetre, ma fenetre n'est pas complement redessinée, j'ai un panel qui n'est pas "agrandi".
    Je metgs un screenshot pour vous donner un apercu de l'erreur.
    et voici le code du panel en question.
    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
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    package common;
     
    import java.awt.BorderLayout;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.awt.Insets;
    import java.awt.Rectangle;
     
    import javax.swing.JPanel;
    import javax.swing.border.EmptyBorder;
     
    public class PanelApplication extends JPanel {
     
        private static final long serialVersionUID = 1L;
        private JPanel panelMenu = null;
        private JPanel panelContenu = null;
        private Windows win = null;
     
     
        public PanelApplication(Windows win) {
            super();
            this.win = win;
           panelMenu = getPanelMenu();
           panelContenu = getPanelContenu();
            initialize();
        }
     
     
        private void initialize() {
            this.setLayout(null);
     
            setDimensionPanel();
            this.add(getPanelMenu(), null);
            this.add(getPanelContenu(), null);
            this.setOpaque(false);
        }
     
        @Override
        public void paint(Graphics grphcs) {
            super.paint(grphcs);
            setDimensionPanel();
            repaint();
            revalidate();
        }
     
        public void setDimensionPanel(){
     
            int w = (int) (win.getSize().width);
            int h = (int) ( win.getSize().height);
     
            this.setSize(w, h);
     
              Insets insets = getInsets();
            Dimension size ;
            if(panelMenu != null)
            {
                size = panelMenu.getPreferredSize();
                panelMenu.setBounds(new Rectangle(
                                                                       (int)(0.009 * win.getSize().width)+insets.left,
                                                                       (int)(0.182 * win.getSize().height+insets.top),
                                                                       70,
                                                                       (int)(0.872 * win.getSize().height) - (int)(0.182 * win.getSize().height)
                                                                     )
                                                                 );
            }
            if(panelContenu != null)
            {
                size = panelContenu.getPreferredSize();
                    panelContenu.setBounds(new Rectangle(
                                                                        (int)(0.087 * win.getSize().width)+insets.left,
                                                                        (int)(0.182 * win.getSize().height)+insets.top,
                                                                        win.getSize().width - ( (int)(0.090 * win.getSize().width) ),
                                                                        (int)(0.872 * win.getSize().height) - (int)(0.182 * win.getSize().height)
                                                                        )
                                                                 );
            }
     
     
            if(panelContenu != null) panelContenu.setSize(win.getSize().width + 400, (int)(0.872 *win.getSize().height));
     
           repaint();
            revalidate();
        }
     
     
        public JPanel getPanelMenu() {
            if (panelMenu == null) {
                panelMenu = new JPanel();
                panelMenu.setLayout(new BorderLayout());
     
                Menu menu = new Menu(win);
                panelMenu.add(menu.getPanel());
                panelMenu.setOpaque(false);
                                    Insets insets = getInsets();
            Dimension size = panelMenu.getPreferredSize();
     
               panelMenu.setBounds(new Rectangle(10+insets.left, 140+insets.top, 70, (int)(0.872 *win.getSize().height)));
            }
     
            return panelMenu;
        }
     
        public JPanel getPanelContenu() {
            if (panelContenu == null) {
                panelContenu = new JPanel();
                panelContenu.setLayout(new BorderLayout());
                panelContenu.setOpaque(false);
     
                        Insets insets = getInsets();
            Dimension size = panelContenu.getPreferredSize();
     
                panelContenu.setBounds(new Rectangle(90+insets.left, 140 + insets.top, win.getSize().width + 400, (int)(0.872 *win.getSize().height)));
     
     
                   panelContenu.setBorder(new EmptyBorder(0,0,0,20));
            }
     
            return panelContenu;
        }
    }
    Images attachées Images attachées  

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. petit problème de placement d'un JPanel
    Par anarkia dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 11/09/2008, 16h57
  2. Problème d'affichage surperposition de JPanel
    Par marcel72 dans le forum AWT/Swing
    Réponses: 11
    Dernier message: 17/07/2007, 16h47
  3. Réponses: 2
    Dernier message: 08/02/2007, 12h02
  4. Réponses: 1
    Dernier message: 06/01/2007, 15h22
  5. Problème de taille d'un JPanel dans un GridLayout
    Par ZamZam340 dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 30/04/2006, 20h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo