`

Swing -- 布局管理器

阅读更多
布局管理是决定容器中组件的大小和位置的过程。布局管理器(Layout Manager)负责管理容器中组件的布局。它指明了容器中构件的位置和尺寸大小。(由java.awt包提供。下面是比较常用的 几个布局管理器)
FlowLayout 流布局管理器
BorderLayout边界布局管理器
GridLayout格子布局管理器
CardLayout卡片布局管理器
GridBagLayoutGridBag布局管理器


1. FlowLayout
FlowLayout类是流布局管理器类,它是缺省布局管理器。流布局管理器可以自动依据窗口的大小,将组件由左到右、由上到下的顺序来排列。
FlowLayout构造方法如下所示:
FlowLayout()
FlowLayout(int align)
FlowLayout(int align, int hgap, int vgap)

2.BorderLayout
BorderLayout:边界布局管理器可以让我们按东、西、南、北、中的方位来布置组件。 BorderLayout类有以下构造函数:
BorderLayout():创建边界布局管理器。
BorderLayout(int hgap, int vgap):创建边界布局管理器,并指定控件的垂直与水平间隔。

3.GridLayout
GridLayout:格子布局管理器把显示区域编组为矩形格子组,然后将控件依次放入每个格子中,从左到右,自顶向下地放置。 GridLayout类有以下构造函数:
GridLayout(int rows, int cols)
GridLayout(int rows, int cols, int hgap, int vgap)

4.CardLayout
CardLayout卡片布局管理器是一个比较复杂的布局管理器。用这个管理器,可以使得容器象一个卡片盒,而容器中的页面象卡片盒中的卡片一样任意翻动显示。
CardLayout布局管理器有以下构造函数:
CardLayout():创建一卡片布局管理器
CardLayout(int hgap, int vgap):创建一卡片布局管理器,并指定左右边距和上下边距。

5.GridBagLayout
GridBagLayout:布局管理器为AWT提供的最灵活、最复杂的布局管理器。GridBagConstraints类来保存位置信息。
使用GridBagLayout类提供的setConstraints()方法将GridBagConstraints类对象绑定到相应组件上。
实现布局的方法:
用GridBagConstraints类的属性设置方位信息
利用GridBagLayout类提供的setConstraints()方法将方位信息绑定到某组件上
将组件加到某容器中

fill属性:可以用来确定如何在它的显示区域内显示组件。
有效值 描述
GridBagConstraints.NONE  按组件的缺省高度和宽度填充
GridBagConstraints.HORIZONTAL 在不改变高度的情况下,填满水平方向的显示区域
GridBagConstraints.VERTICAL 在不改变宽度的情况下,填满垂直方向的显示区域
GridBagConstraints.BOTH  填满整个显示区域


weightx、weighty属性
weightx属性确定此组件是否要拉长,以水平地填入显示区。缺省值均为0(不拉长),另一效值为1(拉长)。weighty属性确定此组件是否垂直拉长填入显示区。有效值相同。

gridwidth、gridheight属性
gridwidth属性指出组件显示区域中列的数目。这些属性的缺省值为1。
设置为GridBagConstraints.REMAINDER,表明该组件后面不能再摆放其他组件,或者说如果要继续摆放组件的话,只能在下一行摆放。设置为GridBagConstraints.RELATIVE表明可以在后面继续摆放组件。
gridheight属性指出组件显示区域中行的数目。

gridx,gridy 属性
属性gridx和gridy分别指出放置组件的长方形网格的行与列的数目。长方形网格最左面列为gridx=0,最高顶部为gridy=0。相当于X,Y坐标。

anchor 属性
当组件小于其显示区域时使用该属性,为在显示区域内确定放置组件的位置。其有效值为:
GridBagConstraints.CENTER (default)
GridBagConstraints.NORTH
GridBagConstraints.NORTHEAST
GridBagConstraints.EAST
GridBagConstraints.SOUTHEAST
GridBagConstraints.SOUTH
GridBagConstraints.SOUTHWEST
GridBagConstraints.WEST
GridBagConstraints.NORTHWEST
分享到:
评论

相关推荐

    Swing-I布局管理器

    主要讲解了Swing中的几种布局管理器,方便大家学习更快速的掌握Swing的学习。

    Swing布局管理器

    针对Swing的布局管理器的详细介绍,对我很有帮助

    Java Swing布局管理器

    Swing布局管理器,标准布局管理器,自定义布局管理器

    Java Swing组件布局管理器之FlowLayout(流式布局)入门教程

    主要介绍了Java Swing组件布局管理器之FlowLayout(流式布局),结合实例形式分析了Swing组件布局管理器FlowLayout流式布局的常用方法及相关使用技巧,需要的朋友可以参考下

    Swing常见布局管理器总结

    Swing常见布局管理器总结

    javaSwing布局管理实例

    javaSwing布局管理实例,多个布局内容,写不同的实例

    java swing-GridLayout的使用

    GridLayout 是一种 Java Swing 库提供的布局管理器,用于在容器中将组件排列为规则的行列网格。 GridLayout 的特点如下: 组件按照行和列的顺序进行排列。 所有的单元格大小相等,会根据容器的大小自动调整。 可以...

    java-中swing结构与布局管理器(ppt文档).ppt

    java-中swing结构与布局管理器(ppt文档).ppt

    Swing布局与结构

    全文详细的介绍了Swing结构与布局管理器

    java swing布局管理器实例之gridbaglayout,实现左右选择框.doc

    java swing布局管理器实例之gridbaglayout,实现左右选择框

    swing结构与布局管理器

    swing 结构与布局管理器 知识 下载

    java swing-GroupLayout的使用

    GroupLayout 是 Java Swing 提供的一种布局管理器,用于设计复杂的图形用户界面(GUI)。 与其他布局管理器相比,GroupLayout 提供了更灵活和功能强大的布局方式。它允许开发者以逻辑组的形式来组织和控制组件的...

    miglayout-swing-5.1.jar

    MiGLayout - 用于 Swing 的 Java 布局管理器 com.miglayout/miglayout-swing/5.1/miglayout-swing-5.1.jar

    java swing-BorderLayout的使用

    BorderLayout 是 Java Swing 库提供的一种布局管理器,用于将容器划分为北、南、东、西和中五个区域,并在这些区域中添加组件。 在 BorderLayout 中,每个区域只能包含一个组件,当添加多个组件时,它们会自动填充...

    13、swing结构与布局管理器

    很不错的j2se课件(ppt)!!!如果你认真学习每个ppt并自己敲完这些实例,你的java基础已经很优秀了!这些资料就是某些大学和培训机构一个学期或更长时间学习的! 为的是共同学习,共同进步! 注:本资料不承担任何...

    miglayout-swing-5.3.jar

    MiGLayout - 用于 Swing 的 Java 布局管理器 com.miglayout/miglayout-swing/5.3/miglayout-swing-5.3.jar

    Java编程实训 Java开发基础入门教程1-12 AWT布局管理器(共14页).pptx

    【完整课程列表】 01 Java开发环境(共17页).ppt 02 Java编程基础(共61页).ppt 03 自定义方法(共14页).ppt 04 面象对象编程初步-类和对象(共...12 AWT布局管理器(共14页).ppt 13 AWT事件处理模型(共29页).ppt

    java swing-CardLayout的使用

    CardLayout 是 Java Swing 库提供的一种布局管理器,用于在容器中管理多个组件的可见性,并允许用户在它们之间切换。 CardLayout 可以在一个容器中显示多个组件,但只有其中一个组件是可见的。通过切换可见组件,在...

    java swing-FlowLayout的使用

    FlowLayout 是 Java Swing 库提供的一种布局管理器,用于在容器中按照水平或垂直方向依次排列组件。 FlowLayout 的特点如下: 组件按照添加的顺序依次排列,并自动换行。 默认情况下,组件在容器中居中对齐。 组件...

Global site tag (gtag.js) - Google Analytics