La taille du bouton (Java)
J'ai créé un menu simple en Java, mais je ne peux pas comprendre comment modifier la taille d'un bouton.
Mon menu ressemble à ceci:
Je veux le dernier bouton pour avoir la même taille comme les autres boutons.
tlacTisk.setSize(10,10);
tlacTisk.setPreferredSize(10,10);
ne fonctionne pas.
Code, où j'ai créé des boutons et de la boîte:
JButton tlacSVG = new JButton();
tlacSVG.setText("Export do SVG");
tlacSVG.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
exportujSVG();
}
});
JButton tlacPNG = new JButton();
tlacPNG.setText("Export do PNG");
tlacPNG.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
exportujPNG();
}
});
JButton tlacTisk = new JButton();
tlacTisk.setText("Tisk...");
tlacTisk.setPreferredSize(new Dimension(50, 25));
tlacTisk.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
tiskni();
}
});
Box boxTlacitek = Box.createVerticalBox();
boxTlacitek.add(Box.createVerticalStrut(5));
boxTlacitek.add(tlacSVG);
boxTlacitek.add(Box.createVerticalStrut(10));
boxTlacitek.add(tlacPNG);
boxTlacitek.add(Box.createVerticalStrut(10));
boxTlacitek.add(tlacTisk);
boxTlacitek.setBorder(BorderFactory.createTitledBorder("Menu"));
okno.add(boxTlacitek, BorderLayout.EAST);
Pouvez-vous me donner des conseils comment je peux changer la taille? Merci.
Vous devez vous connecter pour publier un commentaire.
Différentes mises en page, les gestionnaires traitent taille préférée différemment. Aussi, le réglage de la taille avec
setSize()
n'est pas une bonne idée. Laissez le layout manager faire la mise en page pour vous. Voir Un Guide Visuel pour les Gestionnaires de Mise en page pour plus de détails et d'exemples.Par exemple, vous pouvez créer un panneau séparé qui contient les boutons. Définir son plan de
GridLayout
. Dans cette disposition, les composants prend tout l'espace disponible à l'intérieur de ses cellules, et chaque cellule est exactement de la même taille. Ajouter ce panneau pour le conteneur. Voir Comment Utiliser GridLayout pour des exemples.Ici est une simple démo de
GridLayout
etGridBagLayout
:Vous ne devriez pas essayer de contrôler la taille de vos boutons (ou composants) directement, utilisez le gestionnaire de présentation de la configuration de votre conteneur (le menu du panneau dans votre cas) de le faire.
Pour ce faire, jetez un oeil aux différentes Swing Gestionnaires de Disposition :
Swing Gestionnaires De Disposition
Personnellement, je préfère le JGoodies forme d'API, que je trouve beaucoup plus simple pour l'utilisateur et maintient au fil du temps :
JGoodies Formes de l'API
Ce qui concerne