Java笔记之布局管理

FlowLayout

组件的放置规律是:从左到右、从上到下进行放置,如果容 器足够宽,第一个组件先添加到容器中第一行的最左边,后 续的组件依次添加到上一个组件的右边,如果当前行已放置 不下该组件,则放置到下一行的最左边。 

当容器的大小发生变化时,用FlowLayout管理的组件会发生 变化,其变化规律是:组件的大小不变,但是相对位置会发 生变化。 


BorderLayout 

BorderLayout布局管理器把容器分成5个区域:North,South,East,West和Center,每个区域只能放置一个组件。 

如果使用了BorderLayout布局,当容器的大小发生变化,其 变化规律为:组件的相对位置不变,大小发生变化。 

不一定所有的区域都有组件,如果四周的区域(West、East、North、South区域)没有组件,则由Center区域去补充。 
Java笔记之布局管理_第1张图片

GridLayout

该布局管理器将整个容器划分成N行,M列的网格,平均占据容器的空间。布局时,按照组件加入的顺序优先考虑按行布局,当一行布局满之后再布局下一行(每行只能布局M个组件)。只有当行列不能满足指定的数值时(N x M小于组件个数),才按行扩展。 
Java笔记之布局管理_第2张图片

CardLayout

 CardLayout布局管理器能够帮助用户处理两个以至更多的成员共享同一显示空间,它把容器分成许多层,每层的显示空间占据整个容器的大小,但是每层只允许放置一个组件,当然每层都可以利用容器来实现复杂的用户界面。 

 GridBagLayout

 GridBagLayout生成的布局管理器与GridLayout一样是使用网格来进行布局管理的,所不同之处在于GridBagLayout可以通过类GridBagConstraints 来控制容器内各个组件的大小。

 SpringLayout

 SpringLayout是在JDK1.4中加入的布局管理器,该布局管理器功能强大,布局灵活,能够模拟其他布局管理器的布局。 

GroupLayout

JDK1.6加入了GroupLayout。它是以Group(组)为单位来管理布局,也就是把多个组件(如:JLable、JButton)按区域划分到不同的Group(组),再根据各个Group(组)相对于水平轴 (Horizontal)和垂直轴(Vertical)的排列方式来管理。 



复杂界面的布局往往非常复杂,单纯的使用一种布局管理器 很难对Swing组件进行布局,因此在对复杂界面进行布局时往往需要将多种布局管理器进行组合使用。 



你可能感兴趣的:(java,jdk,swing,扩展)