2016-03-16 106 views
0

我有一個JToolBar,它上面有幾個Jbuttons,它們充當我程序中的圖標。我想實現一個按鈕,當按下它時,會增加工具欄中所有圖標的大小。例如:在JToolBar中更改Jbutton的尺寸

在這裏,我創造我的工具欄:

private JToolBar toolBar = new JToolBar(); 

在這裏,我創建了我的一些圖標:

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()); 

然後我有一個創建工具欄的方法:

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); 
} 

但無論我做什麼,我似乎都無法找到一種方法來改變工具欄中的JButton大小。有沒有人有任何建議,我可以如何實現一種方法來改變按鈕的大小?改變工具欄或按鈕本身的大小會更好嗎?

在此先感謝。

回答

1

嘗試將按鈕添加到JPanel,然後最後將JPanel添加到工具欄。要設置按鈕的大小,請嘗試setPreferredSize()方法。 檢查下面,看看:

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

使用了setPreferredSize()可以使任何大小的方法是將正常工作。