Java之图形用户界面AWT编程(四)

本课大纲:

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 命令行模式下执行编译,运行,结果如下

窗口运行出来后再电脑桌面的左上角

因为坐标关系,我下方的截图是移动窗口后的结果。

从以上范例可以看出,使用绝对定位时甚至可以使两个按钮重叠,可见使用绝对定位确实非常灵活,而且很简捷,但这种方式是以丧失跨平台特性作为代价的。

如果你喜欢,请扫下面二维码关注乐恒在线,可以第一时间获取新知识,新技能。需要转发的朋友也请带上下面的二维码,否则视为侵权。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180805G14LS200?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券