网站大量收购闲置独家精品文档,联系QQ:2885784924

7AWT图形用户界面[1].ppt

  1. 1、本文档共66页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【例7-5】使用CardLayoutLayout布局管理器示例 import java.awt.*; class CardLayoutTest extends Frame{ public CardLayoutTest() { super(CardLayoutTest); this.setBounds(50,50,200,150);//设置显示位置及大小 CardLayout card = new CardLayout(); this.setLayout(card); for(int i=0;i5;i++){ this.add( new Button(Button+(i+1)), Button+(i+1) ); } //card.show(this, Button2); card.next(this); this.setVisible(true); } } public class Test7_5 { public static void main(String[] args) { CardLayoutTest c=new CardLayoutTest(); } } 7.2.4 GridLayout 网格布局管理器 布局策略:将容器划分成若干行列的网格。在容器上添加组件时,组件会按照从左到右、从上到下的顺序在网格中排列。 GridLayout布局管理器总是忽略组件的最佳大小,所有单元的宽度是相同的,是根据单元数对可用宽度进行平分而定的。同样的,所有单元的高度是相同的,是根据行数对可用高度进行平分而定的。 创建布局管理器对象: public GridLayout() 每个组件占据一行一列 public GridLayout(int?rows,int?cols) 具有指定行数和列数的网格布局。 public GridLayout (int?rows, int?cols,int?hgap, int?vgap) 具有指定行数和列数的网格布局。并设置水平和垂直间距设置 【例7-6】使用CardLayoutLayout布局管理器示例。 import java.awt.*; class GridLayoutTest extends Frame{ public GridLayoutTest(){ super(GridLayoutTest); this.setBounds(50,50,200,150); GridLayout card = new GridLayout(2,3,5,5); this.setLayout(card); for(int i=0;i5;i++){ this.add( new Button(Button+(i+1)) ); } this.setVisible(true); } } public class Test7_6 { public static void main(String[] args) { new GridLayoutTest(); } } 7.2.4 GridBagLayout网格包布局管理器 GridBagLayout在网格的基础上提供更为复杂的布局。 和GridLayout不同,GridBagLayout允许容器中各个组件的大小各不相同,还允许单个组件所在的显示区域占多个网格。 GridBagLayout提供了强大的控制功能,不过它也是最复杂的布局管理器,一般很难理解。 它的目的主要是辅助GUI构造工具(它可能使用GridBagLayout而不是绝对位置来控制布局)自动生成代码。如果你发现自己的设计非常复杂,以至于需要使用GridBagLayout,那么你应该使用专门的集成开发工具来完成这个设计。 7.2.5 取消布局管理器 确信自己的程序不需要跨平台,完全可以使用绝对坐标的方式来指定组件的位置和大小。 调用容器的setLayout(null)方法取消该容器的默认布局管理器 然后在添加组件时调用每个组件的setSize()或者setBounds()方法来控制各个组件的显示位置,本章7.1节中的几个例子就是这种情况。 但若使用布局管理器时,布局管理器负责各个组件的大小和位置,因此用户无法在这种情况下设置组件的大小和位置属性,如果试图使用setLocation、setSize等方法,则都会被布局管理器覆盖。 常用组件 import java.awt.*; class MyFrame extends Frame { Label l=new Label(输入文字); Button b=new Button(确定); TextField t

文档评论(0)

xiaohuer + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档