本课大纲:
1,CardLayout布局管理器的特点
2,CardLayout布局管理器的范例
3,调试中出现的问题解决
4,绝对定位的特点
5,绝对定位的范例
1,CardLayout布局管理器的特点
CardLayout布局管理器以时间而非空间来管理它里面的组件,它将加入容器的所有组件看成一叠卡片,每次只有最上面的那个Component才可见。就好像一副扑克牌,它们叠在一起,每次只有最上面的一张扑克牌才可见,CardLayout提供了如下两个构造器
》CardLayout():创建默认的CardLayout布局管理器
》CardLayout(int hgap,int vgap):通过指定卡片与容器左右边界的间距(hgap,),上下边界(vgap)的间距来创建CardLayout布局管理器
CardLayout用于控制组件可见的5个常用方法如下:
》first(Container target)显示target容器中的第一张卡片
》last(Container target)显示target容器中的最后一张卡片
》pevious(Container target)显示target容器中的前一张卡片
》next(Container target)显示target容器中的后一张卡片
》show(Container target,String name)显示target容器中的指定名字的卡片
2,CardLayout布局管理器的范例
在windows 命令行模式下执行编译,运行,结果如下
窗口运行出来后再电脑桌面的左上角
因为坐标关系,我下方的截图是移动窗口后的结果。
3.调试中出现的问题解决
任何一个JAVA程序员都不敢说自己第一次写的任何一个程序直接编译就可以通过。我们看到的别人的贴出来的运行成功的程序,都是经历了N次的调试。语法,算法,逻辑等等都可以出问题。
下面列出一个今天笔者调试碰到的比较特别且出现频率较高的异常,这个异常可以用语言表达就是:导入某包不代表导入其下的子包。
今天这个程序里面使用了事件编程,这个后面会讲。
4,绝对定位的特点
在Java容器中采用绝对定位的步骤如下:
4.1,将Containers的布局管理器设成null: setLayout(null).
4.2, 向容器中添加组件时,先调用setBounds()或setSize()方法来设置组件的大小,位置,或者直接创建GUI组件时通过构造参数指定该组件的大小,位置,然后将该组件添加到容器中。
5,绝对定位的范例
在windows 命令行模式下执行编译,运行,结果如下
窗口运行出来后再电脑桌面的左上角
因为坐标关系,我下方的截图是移动窗口后的结果。
从以上范例可以看出,使用绝对定位时甚至可以使两个按钮重叠,可见使用绝对定位确实非常灵活,而且很简捷,但这种方式是以丧失跨平台特性作为代价的。
如果你喜欢,请扫下面二维码关注乐恒在线,可以第一时间获取新知识,新技能。需要转发的朋友也请带上下面的二维码,否则视为侵权。
领取专属 10元无门槛券
私享最新 技术干货