Définition de la taille des panneaux
J'ai 3 panneaux. L'un est le panneau principal qui contient 2 petits panneaux.
Pour le panneau principal, j'ai utilisé
setPreferredSize(new Dimension(350, 190));
Pour le petit panneau de gauche, j'ai utilisé
setPreferredSize(new Dimension(100, 190));
Pour le petit panneau de droite, j'ai utilisé
setPreferredSize(new Dimension(250, 190));
mais les petits panneaux restent de la même taille. Comment puis-je résoudre ce problème?
C'est le code que j'ai dans mon Panneau principal.
import model.*;
import java.awt.*;
import javax.swing.*;
public class Panel extends JPanel
{
public Panel(Prison prison)
{
setup();
build(prison);
}
private void setup()
{
setBorder(BorderFactory.createLineBorder(Color.blue));
setLayout(new BorderLayout(1, 1));
setPreferredSize(new Dimension(350, 190));
}
private void build(Prison prison)
{
JTabbedPane tab = new JTabbedPane();
tab.addTab("Input", null, new InputPanel(), "Input");
tab.addTab("Display", null, new DisplayPanel(), "Display");
add(tab);
}
}
Vous oubliez le seul code, dans lequel le InputPanel est construit.
OriginalL'auteur Karen | 2009-10-20
Vous devez vous connecter pour publier un commentaire.
Ne pas le faire.
Le point de l'ensemble des gestionnaires de disposition est de permettre à un redimensionnement dynamique, qui n'est pas seulement nécessaire pour l'utilisateur de redimensionner les fenêtres mais aussi l'évolution des textes (internationalisation) et par défaut différente tailles de police et les polices.
Si vous venez de utilisez la disposition des gestionnaires correctement, ils prendront soin de la taille des panneaux. Pour éviter d'avoir de vos composants étendit sur l'écran lorsque l'utilisateur augmente la taille de la fenêtre, ont un ultrapériphériques panneau avec un alignement à gauche FlowLayout et le reste de l'INTERFACE que son unique enfant - qui donnera à l'INTERFACE utilisateur de sa taille préférée et tout excédent est rempli avec la couleur d'arrière-plan.
OriginalL'auteur Michael Borgwardt
Il semblerait que vous utilisez un GridLayout, ou peut-être un FlowLayout, ni d'être ce que vous voulez. Vous voudrez probablement utiliser une BoxLayout, qui respecte ses composants préféré tailles.
Vous ne pouvez pas modifier la taille des cellules dans un GridLayout(cellules ont même dimension)
OriginalL'auteur Jonathan Feinberg
aussi - c'est la taille préférée. si vous ne souhaitez pas autoriser le redimensionnement, vous pouvez aussi définir le maximum de tailles.
si vous en êtes capable, vous voudrez peut-être vérifier la MIG mise en page, mais BoxLayout est également facile à utiliser et, dans le toolkit java déjà.
OriginalL'auteur Jill Renee
C'est celui-ci.
Ne laissez pas le layout manager ajuster à votre taille.
OriginalL'auteur smkelsey