import java.awt.*;
import javax.swing.*;public class sss extends JFrame{
public JPanel pane=new JPanel();
public JTextField tf=new JTextField();
public sss(){
setTitle("xxx");
setLayout(null);
setSize(300,300);
setBounds(500,300,300,300);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); pane.setBounds(0,0,300,100);
pane.setBackground(Color.red);JPanel pane2=new JPanel();
pane2.setBounds(0,100,300,200);
pane2.setBackground(Color.blue);
add(pane);
add(pane2);
}
//
public static void main(String[] args){
new sss();
}
}
这是运行后的界面...
实际上两个Panel比Frame大...
为什么 哪个数字写错了吗
想要红Panel和蓝Panel刚好填满setSize(300,300)的Frame
可是就是大了那么一点
界面写得特别蛋疼。总是和要求的不一样= =
窗口w300,h300
panel left/top 0,0, w 300 h 100
panel2 left/top 0,100, w 300 h 200
正好和显示的一样。
import java.awt.*;
import javax.swing.*;
public class sss extends JFrame{
public JPanel pane=new JPanel();
public JTextField tf=new JTextField();
public sss(){
setTitle("xxx");
setLayout(null);
setSize(300,300);
setBounds(500,300,300,330);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
pane.setBounds(0,0,300,150);
pane.setBackground(Color.red);
JPanel pane2=new JPanel();
pane2.setBounds(0,150,300,150);
pane2.setBackground(Color.blue);
add(pane);
add(pane2);
}
public static void main(String[] args){
new sss();
}
}
三楼正解,应该用布局管理器GridLayout(2,1),这个不是很方便。