java swing最简单实例(2) 往JFrame里面放一个容器或组件

转载别人的第二篇文章 感觉好新奇的 Java 谢谢阅读

可以往JFrame里面放的东西有两种,Containers和Components.在jigloo的图形化界面上可以清楚的看到这些

常用的Containers(容器)有这些: 
JFrame带标题和关闭按钮的界面
JPanel面板
JScrollPane带滚动条的面板
JSplitPane带分栏的面板
JTabbedPane标签页结构的面板
JDialog对话框

常用的Components(组件)有这些
JButton按钮
JLabel标签(用于显示固定不变的文字
JTextField文本框(用于让用户写入文字)
JRadioButton单选框
JCkeckBox选择框
JComboBox下拉框
JTable表格

添加一个普通的容器或者组件的方法是相同的,都是两个步骤,创建出来,然后加进去。我们在实例(1)的基础上进行这两个操作,给一个空的JFrame加上一个组件

[java]  view plain  copy
  1. package basicCompoment;  
  2.   
  3. import javax.swing.JButton;  
  4. import javax.swing.JFrame;  
  5. import javax.swing.SwingUtilities;  
  6. import javax.swing.WindowConstants;  
  7.   
  8. public class AddComponent extends JFrame{  
  9.     public AddComponent(){  
  10.         initGUI();  
  11.     }  
  12.     private void initGUI(){  
  13.         setVisible(true);  
  14.         setSize(300,400);  
  15.         setLocationRelativeTo(null);  
  16.         setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);  
  17.           
  18.         //创建元件  
  19.         JButton jButton1 = new JButton("jButton1");  
  20.         //添加元件  
  21.         add(jButton1);  
  22.     }  
  23.     public static void main(String[] args) {  
  24.         SwingUtilities.invokeLater(new Runnable() {  
  25.             public void run() {  
  26.                 AddComponent f = new AddComponent();  
  27.             }                 
  28.         });  
  29.     }  
  30. }  

这里没有进行布局,只是将组件加进去,所以会显示覆盖整个Frame的一个按钮。

一般来说,可以将对象设为私有成员,在需要定义时创建,在需要加入时加入,可以更方便的在不同函数中对元件进行操作。特别需要注意的是所有的对象必须先初始化才能加入,并且每个对象只能放置在一个地方。即使是两个表现形式完全相同的对象,也必须new两个出来,试图将一个按钮放在两个地方这样的事情是行不通的。

将组件设为私有成员的方式

[java]  view plain  copy
  1. package basicCompoment;  
  2.   
  3. import javax.swing.JButton;  
  4. import javax.swing.JFrame;  
  5. import javax.swing.SwingUtilities;  
  6. import javax.swing.WindowConstants;  
  7.   
  8. public class AddComponent2 extends JFrame{  
  9.     //定义变量  
  10.     private JButton jButton1;  
  11.     public AddComponent2(){  
  12.         initGUI();  
  13.         addComp();  
  14.     }  
  15.     private void addComp(){  
  16.         //初始化  
  17.         jButton1 = new JButton("jButton1");  
  18.         //添加元件  
  19.         add(jButton1);  
  20.     }  
  21.     private void initGUI(){  
  22.         setVisible(true);  
  23.         setSize(300,400);  
  24.         setLocationRelativeTo(null);  
  25.         setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);  
  26.     }  
  27.     public static void main(String[] args) {  
  28.         SwingUtilities.invokeLater(new Runnable() {  
  29.             public void run() {  
  30.                 AddComponent2 f = new AddComponent2();  
  31.             }                 
  32.         });  
  33.     }  
  34. }  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值