Java布局管理

来源:互联网 发布:如何防范sql注入 编辑:程序博客网 时间:2024/04/30 14:28

06-10-10:
19章:布局管理
布局管理安排一个容器的子控件。根据布局方案,它安排组件的大小和位置。
每个容器都有一个默认的布局管理器。注意:虽然我们创建了一个布局对象,但是我们没有必要获取它的一个引用;通常布局管理是在后台工作的,与容器进行交互。所以你通常不需要引用(除了CardLayout)。
布局管理器是在容器的doLayout的时候调用的。通过调用子控件的setLocation或者setBounds方法来安排他们的显示。每次容器显示的开始和容器的revalidate方法时,容器被重新布局。
每个组件都有提供了三个重要的信息给布局管理器,包括最小,最大和preferred 大小。

FlowLayout:根据组件自己的preferred大小来安排。是JPanel的默认布局。FlowLayout也能够指定左中右对齐。
Grid布局:把组件有规律的放在行和列中。组件被随意的resize来填充grid;他们的最小和preferrd大小都被忽略。grid布局器对于有相同的对象或者JPanels的安排最有用。
Border布局:把组件分在五个方位。是JWindow和JFrame的默认布局。因为每个组件都与方向相关,Border布局能够管理至少5个组件;它能够压缩或者伸缩这些组件。
Box布局:大多数的布局管理器都是java.awt包中的一部分。而javax.swing包定义了两个新的布局管理器,用来创建简单的工具栏或者竖直的按钮栏。它把组件布局成单一的行或者是列。与Flow布局相似。
swing有一个叫做box的容器。每个box使用box布局。box还有一些静态的方法来创建不可见的组件,帮助布局。glue是组件之间的空格,对resize有反应;strut,想glue,但是对resize没有反应。
Card布局:一次只显示一个组件。你可以用来实现一个自定义的tab控件。 

原创粉丝点击