您的位置:首页 > 产品设计 > UI/UE

java SWING/GUI测试程序

2013-11-05 20:04 465 查看
//setVisible一定要放在所有组件之后
//否则容易引起界面上组件不全等非正常现象
//以下程序刚开始运行的界面没有显示复选框,
//当改变窗口大小后,复选框才正常显示
package snake;
import javax.swing.*;
public class Test
{	
	public static void main(String[] args)
    {
    	JFrame jf=new JFrame("添加内容面板测试程序");
    	jf.setSize(500,500);
    	jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    	
    	JPanel contentPane=new JPanel();
    	jf.setContentPane(contentPane); 
    	jf.setVisible(true);
    	JCheckBox jr1=new JCheckBox("羽毛球");
    	JCheckBox jr2=new JCheckBox("足球");
    	JCheckBox jr3=new JCheckBox("电脑书");
    	JCheckBox jr4=new JCheckBox("数学书");
    	JCheckBox jr5=new JCheckBox("电影");
    	JCheckBox jr6=new JCheckBox("录像");    	
    	contentPane.add(jr1);
    	contentPane.add(jr2);
    	contentPane.add(jr3);
    	contentPane.add(jr4);
    	contentPane.add(jr5);
    	contentPane.add(jr6);    	
    }
 }




修改程序:将jf.setVisible(true);放在程序最后可正常显示。



//说明一个布局管理器只能用一次,不能多次使用
package snake;
import javax.swing.*;
import java.awt.*;
public class Test
{		

	
	public static void main(String[] args)
    {
    	JFrame jf=new JFrame("测试程序");
    	jf.setSize(500,500);
    	jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	JPanel contentPane=new JPanel();
    	jf.setContentPane(contentPane);
    	JPanel pan1=new JPanel();
    	JPanel pan2=new JPanel();
    	JPanel pan3=new JPanel();
    	JPanel pan4=new JPanel();
    	JPanel pan5=new JPanel();
    	JButton b1=new JButton("生活");
    	JButton b2=new JButton("工作");
    	JButton b3=new JButton("睡觉");
    	JButton b4=new JButton("购物");
    	JButton b5=new JButton("饮食");
    	JButton b6=new JButton("6");
    	JButton b7=new JButton("7");
    	JButton b8=new JButton("8");
    	JButton b9=new JButton("9");
    	JButton b10=new JButton("10");
    	JButton b11=new JButton("11");
    	JButton b12=new JButton("12");
    	JButton b13=new JButton("13");
    	JButton b14=new JButton("14");
    	JButton b15=new JButton("15");
    	JButton b16=new JButton("16");
    	JButton b17=new JButton("17");
    	JButton b18=new JButton("18");
    	JButton b19=new JButton("19");
    	JButton b20=new JButton("20");
    	JButton b21=new JButton("21");
    	JButton b22=new JButton("22");
    	JButton b23=new JButton("23");
    	JButton b24=new JButton("24");
    	JButton b25=new JButton("25");
    	BorderLayout lay=new BorderLayout();
    	contentPane.setLayout(lay);        //第一次使用lay
    	contentPane.add(pan1,"North");
    	contentPane.add(pan2,"South");
    	contentPane.add(pan3,"East");
    	contentPane.add(pan4, "West");
    	contentPane.add(pan5,"Center");   
    	pan1.setLayout(lay);    //若再次使用
    	pan2.setLayout(new BorderLayout());
    	pan3.setLayout(new BorderLayout());
    	pan4.setLayout(new BorderLayout());
    	pan5.setLayout(new BorderLayout());
    	pan1.add(b1,"North");
    	pan1.add(b2,"South");
    	pan1.add(b3,"East");
    	pan1.add(b4, "West");
    	pan1.add(b5,"Center");  
    	pan2.add(b6,"North");
    	pan2.add(b7,"South");
    	pan2.add(b8,"East");
    	pan2.add(b9, "West");
    	pan2.add(b10,"Center");
    	pan3.add(b11,"North");
    	pan3.add(b12,"South");
    	pan3.add(b13,"East");
    	pan3.add(b14, "West");
    	pan3.add(b15,"Center");  
    	pan4.add(b16,"North");
    	pan4.add(b17,"South");
    	pan4.add(b18,"East");
    	pan4.add(b19, "West");
    	pan4.add(b20,"Center");
    	pan5.add(b21,"North");
    	pan5.add(b22,"South");
    	pan5.add(b23,"East");
    	pan5.add(b24, "West");
    	pan5.add(b25,"Center");
    	jf.setVisible(true);
    }
 }




将代码:pan1.setLayout(lay); 修改为:pan1.setLayout(new BorderLayout()); 运行结果为:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: