点击查看:2015计算机等级考试二级Java入门教程章节汇总
点击查看:2015计算机等级考试二级Java入门教程第十二章汇总
12.5 使用容器
容器是以Container类为基础的组件,因此,所有的Swing组件都是容器。Container类是Window类的直接基类,它提供了包含其他组件的能力。由于Container类是一个抽象类(abstract),所以你不能创建Container的实例。由于JFrame或JDialog是如同Window这样的子类对象,所以它继承了包含其他组件的能力。
注意,容器不能包含Window类对象或从Window类派生的类对象,可以包含任何由Comonent派生类的其他类对象。
容器中的组件显示在屏幕上容器占据的区域内,例如,一个对话框可能包含提交选项的JList对象,提交其他选项的JCheekBox对象以及描述结束对话框或输入选项时用户可以使用的JButton按钮对象,所以这些组件都显示在对话框的边框内。当然,容器要负责显示这些被包含的组件,同时还要控制使用Layout manager嵌入的组件。在了解布局管理器的功能以及组件的布局如何确定之前,让我们查看一下Container类中定义的基本方法以及所有容器可用的方法。
你可以使用Container类中定义的下列方法查看容器对象中有关组件。
如果我们有一个Container类对象content,或许是JFrame窗口的内容窗格,我们就 可以运用下列的语句在Container中迭代。
Component aComponent-null; //Stores a Component
int numComponents;conent.getComponentCount(); //Get the count
for(int i=0;i
{
aComponent.content.getComponent(i); //Get each component
//to something with it....
}
在for循环语句中依次检索content中的每个组件,我们也可以这样检索它们:
component[] theComponts=content.getComponents();//Get all components
for(int i=0;j
{
//Do something with theComponets[i]....
}
将组件添加到容器中
存储在容器中的组件被记录在Container对象内的一个数组y.当目前的数组与组件样多时,若再添加组件。数组的尺寸就要增加。你可以使用方法add()组件添加到容器中。Container类定义了下列4个重载的add()方法版本:
注意,添加一个组件并不替代容器中已有的任何组件。当你在给定位置上增加一个组件时。其他的组件将依次腾出空间显示新的组件。然而,一个组件在同一时刻只能位于个容器中,将一个存在于另一个容器中的组件添加到这个容器中,这个组件将会从原来的容器中删去。
为了试试将一个组件添加到一个容器中,我们需要知道add()方法中的约束是什么,并查看一下容器中的组件布局是如何管理的。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |