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 :

[Swing pour les nuls] Problème d'ajencement entre 2 JPanels


Sujet :

AWT/Swing Java

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2006
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 157
    Points : 69
    Points
    69
    Par défaut [Swing pour les nuls] Problème d'ajencement entre 2 JPanels
    Bien le bonjour !

    J'ai un problème d'agencement entre deux conteners, et je ne parviens pas à le résoudre malgrè un outil wysiwyg.

    J'ai une frame qui contient un jContentPane.
    Ce jContentPane contient 2 JPanel : un avec un JTable et un avec 2 boutons.

    Je veux mon premier JPanel en haut et le second en-dessous : j'utilise donc un layout de type BoxLayout(Y_Axis) sur mon jContentPane.

    Pour que les boutons soient alignés horizontalement, je place un layout BoxLayout(X_Axis) sur leur JPanel.

    Maintenant mon problème survient lorsque je maximise ma frame : chaque JPanel prend 50% de la hauteur, et moi je voudrais que le premier en prenne le plus possible, et le second juste ce qui est nécessaire .

    Pour résumer :
    JFrame
    -- jContentPane : BoxLayout(Y_Axis)
    ------JPanel 1
    -----------JTable
    ------JPanel 2 : BoxLayout(X_Axis)
    -----------Button 1
    -----------Button 2

    Mon JPanel 1 a tout de même la propriété suivante :
    setPreferredScrollableViewportSize(new Dimension(800, 300));

    Sauriez-vous ce qu'il faut faire ?
    Je ne parviens pas à m'en sortir

    Merci, par avance

  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 : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Points : 12 977
    Points
    12 977
    Par défaut
    Abandonner ton BoxLayout et passer à un BorderLayout ou un GridBagLayout pour placer tes deux JPanels

    En utilisant un BorderLayout tu mets le premier JPanel dans l'emplacement CENTER et le second dans l'emplacement SOUTH, comme ça le premier devrais grandir et le second plus ou moins rester à sa hauteur normale

    Sinon GridBag avec les Fill et weighty qui vont bien pour plus de custo au niveau du redimensionnement
    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 du Club
    Inscrit en
    Novembre 2006
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 157
    Points : 69
    Points
    69
    Par défaut
    Merci Sinok, je regarde cela tout à l'heure alors, j'ai vraiment du mal sur ces notions

    Je tag le problème comme résolu .



    [EDIT]Je confirme qu'avec l'utilisation du BorderLayout ca fonctionne parfaitement, je m'en veux de ne pas l'avor compris avant

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

Discussions similaires

  1. Réponses: 14
    Dernier message: 15/10/2006, 11h22
  2. Réponses: 6
    Dernier message: 06/11/2005, 11h10
  3. C++ pour les nuls => Linux => Problème
    Par wizardman dans le forum Linux
    Réponses: 6
    Dernier message: 21/09/2005, 00h53
  4. Apprendre le réseau (pour les nuls)
    Par __fabrice dans le forum Développement
    Réponses: 5
    Dernier message: 08/03/2005, 13h49

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