1
這裏是我的代碼:爲什麼SetMinimumSize設置最小高度但不是寬度?
import javax.swing.*;
import java.awt.*;
public class PanelModel {
public static void main(String[] args) {
JFrame frame = new JFrame("Colored Trails");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel mainPanel = new JPanel();
mainPanel.setLayout(new BoxLayout(mainPanel, BoxLayout.Y_AXIS));
JPanel firstPanel = new JPanel();
firstPanel.setLayout(new GridLayout(4, 4));
firstPanel.setMaximumSize(new Dimension(4*100, 4*100));
firstPanel.setMinimumSize(new Dimension(4*100, 4*100));
JButton btn;
for (int i=1; i<=4; i++) {
for (int j=1; j<=4; j++) {
btn = new JButton();
btn.setPreferredSize(new Dimension(100, 100));
firstPanel.add(btn);
}
}
mainPanel.add(firstPanel);
frame.add(mainPanel);
frame.setSize(520,600);
//frame.setMinimumSize(new Dimension(520,600));
frame.setVisible(true);
}
}
當我增加窗口(鼠標)的大小,我看到我的面板不增加它的大小。這是預期的行爲(因爲我設置了面板的最大尺寸)。但是,當我減小窗口的大小時,我發現面板的寬度也會減小(而高度是恆定的)。
因此,setMinimumSize
只能部分工作。這是爲什麼?
會http://stackoverflow.com/questions/1345902/jmenuitem-setminimumsize-doesnt-work幫助嗎? – VonC 2010-03-30 12:14:37