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 :

modifier la taille de jpanels


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 33
    Points : 18
    Points
    18
    Par défaut modifier la taille de jpanels
    Bonjour,

    Je suis en train de créer un plugin et je dois donc pour cela placer différents JPanels.
    J'ai réussi à intégré tous les JPanels souhaités. Afin de les placer dans ma fenêtre j'ai utilisé des JSplitpane. Il me reste un dernier problème que je n'arrive pas à résoudre.
    En effet, je souhaiterai modifier la taille de 2 JPanel contenus dans un JSplitPane horizontal. Mes 2 panels ont la même taille et j'aimerai bien changer ça.
    Les panels ont été créés avec des gridlayout ou des gridbaglayout.
    J'ai essayé tout ce qui me venait à l'esprit mais là je suis perdu... Je n'arrive pas à trouver de solution
    J'ai essayé de modifier la taille des panels avec:
    setSize
    setBounds
    setPreferredSize
    setMinimumSize


    Merci d'avance pour vos réponses

  2. #2
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 33
    Points : 18
    Points
    18
    Par défaut
    Merci pour la réponse.
    Cependant je ne comprend pas mais ça ne marche pas.
    Je viens justement d'essayer cette méthode mais rien n'y fait, mes panels restent de la même taille.

    Les étapes que je réalise sont les suivantes.

    - création d'un jsplitpane horizontal
    - sélection de la localisation du diviseur
    - création du 1er panel et ajout à gauche de mon jsplitpane
    - création du 2ème panel et ajout à droite de mon jsplitpane

    Et çà ne marche pas :'(
    pourquoi tant de haine...

    Est ce que ça pourrait changer quelque chose si je ne faisais que des gridbaglayout ???

  4. #4
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Fais appel au setDividerLocation après avoir ajouté tes Panels, ça ira mieux normalement.
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  5. #5
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 33
    Points : 18
    Points
    18
    Par défaut
    Ça ne marche toujours pas...
    Je vais rerereregarder mon code pour voir ou j'ai fais une erreur.

    merci pour tes réponses

  6. #6
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 33
    Points : 18
    Points
    18
    Par défaut
    Je viens de faire un test qui me rend perplexe.
    J'ai ajouter la ligne setDividerLocation(0.8d) dans l'action liée à un bouton. Quand je clic sur ce bouton la taille de mon jsplitpane est bien modifiée
    Je suis désespéré.
    Comment ce fait il que je n'arrive pas à modifier la taille lors du lancement de mon plugin ???????????

    Quelqu'un aurait-il une idée?

  7. #7
    Expert éminent sénior
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Fais un appel à revalidate apres le setDividerLocation
    Hey, this is mine. That's mine. All this is mine. I'm claiming all this as mine. Except that bit. I don't want that bit. But all the rest of this is mine. Hey, this has been a really good day. I've eaten five times, I've slept six times, and I've made a lot of things mine. Tomorrow, I'm gonna see if I can't have sex with something.

  8. #8
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 33
    Points : 18
    Points
    18
    Par défaut
    ça ne marche toujours pas.
    Le problème doit venir d'ailleurs.
    Lorsque je créé mon plugin je dois créer une méthode initialize() qui l'initialise (..logique).
    A la fin de cette méthode je créé un nouveau layout (gridlayout) dans lequel j'ajoute mon jsplitpane.

    setlayout(new gridlayout())
    add(jsplitpane)

    Je me suis rendu compte que lorsque je créé un gridbaglayout au lieu d'un gridlayout le jsplitpane est bien redimensionné. Par contre, la fenetre de mon plugin n'utilise plus tout l'espace disponible...
    J'ai bien essayé de modifié les contraintes mais lorsque je configure les contraintes weightx et weighty pour être en plein écran mon jsplitpanel n'est de nouveau plus redimensionné

  9. #9
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 33
    Points : 18
    Points
    18
    Par défaut
    J'ai enfin trouvé la solution. J'ai cru devenir fou avant de résoudre ce problème.
    Et pourtant la solution est toute simple.
    Avant avoir rajouter la ligne setDividerLocation(double) il fallait rajouter la ligne setResizeweight(double) ce qui donne donc

    JSPlitPane split=new JSPlitPane(JSplitPane.HORIZONTAL_SPLIT,component1, component2)
    split.setResizeWeight(0.75);
    split.setDividerLocation(0.75);

    Et trois heures de perdu pour une ligne de code... la vie est injuste
    Merci pour votre aide

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

Discussions similaires

  1. Modifier la taille de deux JPanel
    Par Von_Kavalier dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 15/06/2015, 03h49
  2. Réponses: 7
    Dernier message: 23/01/2008, 23h36
  3. modifier la taille d'un JPanel
    Par Asmod_D dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 04/04/2007, 15h12
  4. [jpanel] Modifier la taille...
    Par scorpiwolf dans le forum Agents de placement/Fenêtres
    Réponses: 7
    Dernier message: 01/07/2004, 17h11
  5. Réponses: 5
    Dernier message: 27/11/2002, 14h08

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