javaSwing--容器

来源:互联网 发布:ug10钻孔编程 编辑:程序博客网 时间:2024/05/22 06:25

容器

java中的容器分为顶层容器、中间容器和特殊容器三大类。其中,顶层容器是GUI的基础,其他所有的组件都是直接或间接显示在顶层容器中的。在Swing中有3种顶层容器,分别是JFrame(框架窗口,即通常的窗口)、JDialog(对话框)、JApplet(用于设计嵌入在网页中的Java小程序)。中间容器是可以包含其他相应组件的容器,但是中间容器不能单独存在,必须依附于顶层容器。Java常见的中间容器有JFrame、JScrolPane等。还有一些特殊容器,如:JLayeredPane、JRootPane、JInternalFrame等。

1.JFrame

Java中所提供的JFrame类的实例就是一个顶层容器,是构造GUI的基础,其他组件必须添加到顶层容器中,以便和操作系统进行信息交互。JFrame常用的方法如下:

JFrame的常用方法

                方法

               说明

JFrame()

创建一个没有标题的窗口

JFrame(String s)

创建一个标题为s的窗口

Public void setBounds(int a,int b,int width,int hight)

设置显示窗口的位置以及大小

Public void setSize(int width,int hight)

设置窗口的大小

Public void setLocation(int x,int y)

设置窗口的位置(默认位置为(0,0))

Public void setVisible(boolean b)

设置窗口是否可见,默认false不可见

Public void setResizable(boolean b)

设置窗口是否为可调整大小,默认为可调整

Public void Container getContentPane()

获取顶层容器的内容面板

Public void void dispaly()

撤销当前窗口,并且释放当前窗口使用的所有资源

Public void setExtendedState(int state)

设置窗口的扩展状态

Public void setDefaultCloseOperation(int Operation)

设置关闭窗口后的默认操作

其中,参数stateJFrame类中常量MAXIMIZED_HORIZ(水平方向最大化)/MAXIMIZED_VERT

(垂直方向最大化)/MAXIMIZED_BOTH(垂直和水平方向都最大化)。参数operationJFrame类中的intstatic常量DO_NOTHING_CLOSE(什么都不做)/HIDE_ON_CLOSE(隐藏当前窗口)/DIPOSE_ON_CLOSE(隐藏当前窗口,并释放所有资源)/EXIT_ON_CLOSE(结束窗口所在的应用程序)

创建窗口一般有两种方式:第一种方式是直接定义JFrame类的对象创建一个窗口,2种方式是创建类继承JFrame类新建一个窗口。

Swing组件不能直接添加到顶层容器中,它必须添加到一个与Swing顶层容器相关联的内容面板(content pane)上。

JFrame中添加组件的两种方式之一如下:

(1)getContentPane()方法获得JFrame的内容面板,再对其加入组件:

Frame.getContentPane().addchildComponent;

(2)把组件添加到Jpanel之类的中间容器中,用setContentPane()方法把该容器置为JFrame的内容面板:Jpanel1 contentPane=new Jpane1();

//把其他组件添加到Jpanel

Frame.setContentPanecontentPane;

具体例子:

package com.swing;
import javax.swing.*;


public class container1 {
static final int  WIDTH=300;                                                      //设置宽度
static final int HEIGHT=200;                                                    //设置长度
public static void main(String[] args)
{
JFrame jf=new JFrame("添加内容面板测试程序");          //建立顶层容器
jf.setSize(WIDTH,HEIGHT);                                            //设置窗口的大小
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  //设置关闭窗口的操作
jf.setVisible(true);                                                                //设置窗口是否可见
JPanel contentpane=new JPanel();                                   //创建中间容器
jf.setContentPane(contentpane);                                      //将中间容器依托在顶层容器内
JButton b1=new JButton("确定");                                     //创建一个基本组件
JButton b2=new JButton("取消");                                    //创建另一个基本组件
contentpane.add(b1);                                                     //将基本组件依附于中间容器中。
contentpane.add(b2);                                                    //将基本组件依附于中间容器中。



}


}

运行结果:



原创粉丝点击