日期:2014-05-20 浏览次数:20773 次
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class Test {
public void service(){
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// frame.setPreferredSize(new Dimension(200,200));
Container contentPane = frame.getContentPane();
JButton b1 = new JButton("测试");
b1.setPreferredSize(new Dimension(150, 150));
JPanel p1 = new JPanel();
p1.add(b1);
contentPane.add(p1);
//
// frame.pack();
frame.setBounds(0, 0, 200, 200);
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args) {
Test t = new Test();
t.service();
}
}
------解决方案--------------------
这个只能意会不能言传,我要说的话也就复制api的文档了。
楼主还是看看文档怎么写的吧。
------解决方案--------------------
一般情况如果你使用布局管理器,会根据组件的preferredSize计算大小。有的布局管理器会无视这个,比如
BoxLayout会忽略组件的宽或高,将组件设置成统一宽度/高度。