您的位置:首页 > 产品设计 > UI/UE

GUI 三种布局

2012-05-02 17:39 393 查看
GUI的应用

1容器对其中所包含组件的排列方式,包括组件的位置和大小的设定,被称为容器的布局(Layout)。

布局管理器:指系统事先定义好的若干容器布局效果,使用它们可以方便地实现组件在容器的布局管理,并能够满足各种常规需要。例如,FlowLayout等

每一个容器都有默认的布局管理器,在创建一个容器对象时,同时也会创建一个相应的默认布局管理器对象,用户也可以随时为容器创建和设置新的布局管理器。

容器对象.setLayout(布局管理器对象) 布局管理器 容器对象.getLayout()

2常用布局管理器

FlowLayout:流式布局,是Panel(及其子类)类型容器的默认布局管理器类型。

布局效果:组件在容器中按照加入次序逐行定位,行内从左到右,一行排满后换行。

组件按原始大小进行显示。

构造方法 public FlowLayout()

public FlowLayout(int align)

public FlowLayout(int align,int hgap,int vgap)


BorderLayout:边界布局,是Window及其子类类型容器的默认布局管理器。

布局效果:将整个容器范围划分成East、West、South、North、Center五个区域,

组件只能被添加到指定的区域。

在使用边界布局的容器中,组件的尺寸也被布局管理器强行控制,即与其所在区域的尺寸相同。

构造方法 public BorderLayout() public BorderLayout(int hgap,int vgap)

BorderLayout的使用。

f.setLayout(new BorderLayout());

f.add(btnNorth,"North");

f.add(btnSouth,"South");

f.add(btnWest,"West");

f.add(btnEast,"East");

f.add(btnCenter,"Center");


GridLayout:网格布局

布局效果:将容器区域划分成规则的矩形网格,每个单元格区域大小相等。

组件被添加到每个单元格中,

按组件加入顺序先从左到右填满一行后换行,行间从上到下。


构造方法 public GridLayout() public GridLayout(int rows,int cols) public GridLayout(int rows,int cols,int hgap,int vgap)

示例3:网格布局的使用。

f.setLayout(new GridLayout(3,2));

f.add(b1); f.add(b2);

f.add(b3); f.add(b4);

f.add(b5);

f.pack();


当GridLayout布局的容器尺寸发生变化时,每个单元格的大小都将随之作调整,组件的大小也会发生变化。

正常情况下使用GridLayout布局时,向容器中加入的组件数目应与容器划分出来的单元格总数相等,但假如出现两者数目不等的情况,程序也不会出错,而是保证行数为设置值,列数则通过指定的行数和布局中的组件总数来进行调整。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: