2016-03-16 6 views
0

J'ai un JToolBar avec plusieurs boutons qui agissent comme des icônes dans mon programme. Je voulais implémenter un bouton qui, lorsqu'il est pressé, augmente la taille de toutes mes icônes dans la barre d'outils. Par exemple:Modification des dimensions des boutons J dans un JToolBar

Ici, je crée ma barre d'outils:

private JToolBar toolBar = new JToolBar(); 

Ici, je créer certaines de mes icônes:

private JButton openButton = new JButton(am.getToolbarOpenFileAction()); 
private JButton closeButton = new JButton(am.getToolbarCloseFileAction()); 
private JButton undoButton = new JButton(am.getToolbarUndoAction()); 
private JButton redoButton = new JButton (am.getToolbarRedoAction()); 
private JButton cutButton = new JButton(am.getToolbarEditCutAction()); 

Et puis j'avoir une méthode qui crée la barre d'outils:

public void createToolbar() throws Exception { 
    toolBar.setFloatable(false); 
    toolBar.add(openButton); 
    toolBar.add(closeButton); 
statusButton.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); 
    statusButton.setFocusable(false); 
    statusButton.setBorderPainted(false); 
    statusButton.setContentAreaFilled(false); 
    statusButton.setText("Status"); 
    statusButton.setHorizontalTextPosition(javax.swing.SwingConstants.LEFT); 
    setCompileStatus(1); 
} 

Cependant, peu importe ce que je fais, je n'arrive pas à trouver un moyen de modifier les tailles JButton dans la barre d'outils. Quelqu'un at-il des suggestions sur la façon dont je peux implémenter une méthode pour modifier la taille du bouton? Serait-il préférable de modifier la taille de la barre d'outils ou les boutons lui-même?

Merci d'avance.

Répondre

1

Essayez d'ajouter les boutons à un JPanel, puis ajoutez le JPanel à la barre d'outils. Pour définir la taille du bouton, essayez la méthode setPreferredSize(). Vérifiez le ci-dessous et voir

méthode, vous pouvez faire toute taille
openButton.setPreferredSize(new Dimension(100, 20)); 
     panel.add(openButton); //add button to panel 
     toolBar.add(panel);//add panel to toolbar 
     add(toolBar);//add toolbar to frame 
2

utilisation setPreferredSize() cela fonctionnera très bien.