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

Agents de placement/Fenêtres Java Discussion :

[JFrame] resize


Sujet :

Agents de placement/Fenêtres Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 137
    Par défaut [JFrame] resize
    Bonjour.
    J'ai une JFrame qui n'est pas redimensionnable par l'utilisateur. Dans mon code, je dois changer sa taille, ce que je fais par :
    .

    Malheureusement, les panels à l'intérieurs ( getContentPane() ) ne sont pas redimensionnés par rapport à la nouvelle taille de la fenêtre.

    Comment faire ?

    J'ai essayé d'invalider puis de revalider le contentPane(), mais ca ne marche pas.

    PS : lorsque je mets la fenêtre en redimensionnable, lorsque la taille est modifiée, les panels à l'intérieur sont redimensionnés automatiquement, c'est exactement ce que je recherche à faire...

  2. #2
    Membre émérite
    Avatar de c-top
    Profil pro
    Turu
    Inscrit en
    Septembre 2003
    Messages
    972
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Turu

    Informations forums :
    Inscription : Septembre 2003
    Messages : 972
    Par défaut
    Cela peut venir du layout que tu utilises....
    Cela ressemble à un problème de gridBagLayout

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 137
    Par défaut
    Ben non, j'utilise un simple BorderLayout pour mettre les composants sur mon contentpane.

    Est-ce que je dois revalider tous les panels composant mon contentpane, ou bien le revalidate() sur le contentpane() est récursif ??

  4. #4
    Membre éclairé Avatar de pingoui
    Homme Profil pro
    Activité professionnelle sans liens avec le developpement
    Inscrit en
    Juillet 2004
    Messages
    584
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Activité professionnelle sans liens avec le developpement
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2004
    Messages : 584
    Par défaut
    Tu mets un écouteur qui te permet de savoir lorsque la taille change
    Puis tu redimensionne tes fenêtres à l'intérieur de ta Frame suivant la nouvelle dimension

    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
     
     
        private MaFrame(){ 
            super("Prpg"); 
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setSize(800,600);
        } 
     
        public void init(){ 
     
           [...]
            addComponentListener(new ComponentAdapter() { 
            	   public void componentResized(ComponentEvent e) { 
            	        resizeFrame(); 
            	   } 
            	}); 
               int width = getSize().width; 
               int  height = getSize().height;
               [...]
              TonPanel1.setSize(width,height);
    }
        public void resizeFrame() { 
        	   int _newWidth = getSize().width; 
        	   int _newHeight =  getSize().height;
     
        	   TonPanel1.setSize(_newWidth,_newHeight);
     
        }
    je ne sais pas si c'est correct.... je suis grand débutant mais chez moi, ça fonctionne !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 137
    Par défaut
    Malheureusement non.
    J'ai bien redimensionné le contentpane(), mais les composants à l'intérieur ne le sont pas.

    Si je les redimensionne un par un, j'ai pas fini ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2004
    Messages : 69
    Par défaut
    essaie de faire un

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.repaintall() ;
    dans la fonction que t'as donné pingoui.

    peut-être ça vient de la ...

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 137
    Par défaut
    Kesako repaintAll() ??
    Je n'ai pas trouvé cette méthode dans jframe ni dans jpanel.

    Est-ce que cest l'equivalent de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    paintAll( this.getGraphics() );

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Juillet 2002
    Messages : 137
    Par défaut
    Je viens d'essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    paintAll( this.getGraphics() )
    Et ca marche nickel, sans avoir à redimensionner les panels !!!

    Merci à vous.

    PS : par contre, toujours pas trouvé cette fonction repaintAll()....

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

Discussions similaires

  1. MàJ image d'un JLabel lors d'une JFrame resize
    Par Teskha dans le forum Agents de placement/Fenêtres
    Réponses: 0
    Dernier message: 28/03/2012, 12h36
  2. JFrame resize taille
    Par Jats_map dans le forum Agents de placement/Fenêtres
    Réponses: 7
    Dernier message: 20/06/2007, 17h41
  3. resize JFrame = resize JPanel
    Par dark2 dans le forum Agents de placement/Fenêtres
    Réponses: 7
    Dernier message: 17/10/2006, 17h22
  4. [JFrame][resizable=flase]empeche double click barre de titre
    Par Invité dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 28/11/2005, 15h26
  5. Boxlayout et resize JFrame
    Par romainw dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 12/04/2005, 09h56

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