`

GridLayout详解

 
阅读更多

GridLayout

 

GridLayout是一个非常强大的布局管理器,它可以实现很多复杂的布局,名字中暗示它将所有控件放置在类似网格的布局中.^__^GridLayout有两个构造函数.

 

GridLayout的构造函数

构造函数 描述 

public GridLayout()    建立一个默认的GridLayout布局. 

public GridLayout(int numColumns, boolean makeColumnsEqualWidth) 建立一个GridLayout布局,拥有numColumns列,如果makeColumnsEqualWidth为true,则全部组件将拥有相同的宽度. 

GridLayout有6个公共的数据成员,相对重要的是numColumns.

 

GridLayout数据成员

属性 描述 

int horizontalSpacing-----------------------控制一行中两个网格间组件的宽度,像素为单位. 

boolean makeColumnsEqualWidth -----如果为true,强制全部的列拥有相同的宽度. 

int marginHeight ----------------------------控制顶部和底部组件离边缘的距离空间,以像素为单位. 

int marginWidth ---------------------------- 控制左边和右边组件离边缘的距离空间,以像素为单位. 

int numColumns --------------------------- 此GridLayout的列数目. 

int verticalSpacing------------------------- 控制一列中两个网络间组件的宽度,像素为单位.

 

 

你能使用GridLayout设置GridData类来布局更多的复杂组件.GridData有两个构造函数.

 

**GridData构造函数

构造函数 描述 

public GridData()    创建默认一个默认的GridData对象. 

public GridData(int style)    初始化指定的style风格布局. 

和其它的布局类一样,GridLayout也提供一些公共的数据成员控制它的状态,它也提供一些常量,你可以在在构造成函数中使用.你可以用过位标志"|"来连接几个不同的效果,但请注意风格不要起冲突.

 

**GridData数据成员 

属性 描述 

boolean grabExcessHorizontalSpace    如果为true,指示布局器中网格自动填充多余的水平空间,默认为false. 

boolean grabExcessVerticalSpace    如果为true,指示布局器中网格自动填写多余的垂直空间,默认为false. 

int heightHint 该行中最小的高度,以像素为单位,默认为SWT.DEFAULT. 

int horizontalAlignment    网格中组件水平对齐方式,可能的值为BEGINNING, CENTER, END,和FILL. 

int horizontalIndent    与左边网格的水平缩进,默认为0 

int horizontalSpan    设置网格占有的列数目,默认为1 

int verticalAlignment    网格中组件垂直对齐方式,可能的值为BEGINNING, CENTER, END,和FILL. 

int verticalSpan    设置网格占有的行数目,默认为1 

int widthHint    该列中最小的宽度,以像素为单位,默认为SWT.DEFAULT. 

 

GridData常量 

常量 描述 

BEGINNING 非style值,指定水平或垂直的对齐方式. 

CENTER 非style值,指定组件在网格中居中,水平或垂直. 

END 非style值,指定水平或垂直的对齐方式. 

FILL 非style值,指定组件填充网格,水平或垂直. 

FILL_BOTH 设置horizontalAlignment和verticalAlignment为FILL,设置grabExcessHorizontalSpace和grabExcessVerticalSpace为true. 

FILL_HORIZONTAL 设置horizontalAlignment为FILL,和设置grabExcessHorizontalSpace为true. 

FILL_VERTICAL 设置verticalAlignment为FILL,和设置grabExcessVerticalSpace为true. 

GRAB_HORIZONTAL 设置grabExcessHorizontalSpace为true. 

GRAB_VERTICAL 设置grabExcessVerticalSpace为true. 

HORIZONTAL_ALIGN_BEGINNING 设置horizontalAlignment为BEGINNING. 

HORIZONTAL_ALIGN_CENTER 设置horizontalAlignment为CENTER. 

HORIZONTAL_ALIGN_END 设置horizontalAlignment为END. 

HORIZONTAL_ALIGN_FILL 设置horizontalAlignment为FILL. 

VERTICAL_ALIGN_BEGINNING 设置verticalAlignment为BEGINNING. 

VERTICAL_ALIGN_CENTER 设置verticalAlignment为CENTER. 

VERTICAL_ALIGN_END 设置verticalAlignment为END. 

VERTICAL_ALIGN_FILL 设置verticalAlignment为FILL. 

分享到:
评论

相关推荐

    eclipse开发技术详解第7章

    本章主要介绍了SWT中的五种布局管理器:FillLayout、RowLayout、GridLayout、FormLayout和StackLayout。 7.1 布局管理器概述 布局管理器简化了组件定位的复杂性,避免了使用setBounds()方法进行绝对坐标定位的不便...

    java gui layout API

    二、GridLayout详解 设计gridlayout-1.9-sources.jar可能包含的是GridLayout的相关源代码。GridLayout将组件排列成网格,每个组件占据一个单元格。它的主要优点是简单易用,缺点是所有组件的大小都是固定的,可能...

    GridLayout

    ### GridLayout 类详解 #### 一、概述 在Java图形用户界面设计中,`GridLayout`类是一种常见的布局管理器,主要用于将容器内的组件按照矩形网格的形式进行排列。使用`GridLayout`后,容器会被划分成一系列大小相等...

    GridLayout 用法

    ### GridLayout 用法详解 在Java的Swing框架中,`GridLayout`是一种布局管理器,它将容器划分为均匀大小的矩形网格,每个网格可以放置一个组件。这种布局方式非常直观,适用于需要将界面元素整齐排列成行或列的应用...

    GridLayout应用

    **GridBagLayout详解** GridBagLayout是Java中最灵活的布局管理器,它可以处理不同大小的组件、跨越多个网格的组件,甚至允许组件部分重叠。GridBagLayout的核心在于GridBagConstraints类,它用于定义组件的约束...

    GridLayout.zip

    2. **属性详解**: - `android:columnCount`:定义网格中的列数。 - `android:rowCount`:定义网格中的行数。 - `android:orientation`:设置网格的方向,水平(horizontal)或垂直(vertical)。 - `android:...

    android应用开发详解

    此外,还会介绍如何使用ConstraintLayout、GridLayout、LinearLayout等布局管理器来组织UI元素,以实现更灵活的界面设计。 Android应用的数据存储也是重点,包括SQLite数据库的使用、SharedPreferences进行轻量级...

    gridlayout的使用

    ### GridBagLayout详解 在Java Swing中,`GridBagLayout`是一种非常强大的布局管理器,它允许组件在容器中自由地扩展、收缩以及占据多个格子。与`GridLayout`不同的是,`GridBagLayout`提供了更为灵活的布局方式,...

    Android应用开发详解2010版

    接下来,深入到UI设计,你会学习到Android的布局管理器,如LinearLayout、RelativeLayout、GridLayout和TableLayout等,以及如何使用XML来设计用户界面。此外,还会讨论到View和 ViewGroup的区别与交互,以及自定义...

    《java+swing图形界面开发与案例详解》源代码

    开发者可以使用JButton、JLabel、JTextField等类来创建这些组件,并通过布局管理器(如FlowLayout、GridLayout、BorderLayout和 MigLayout)来组织这些组件在窗口中的位置。例如,JFrame是顶级容器,通常用于承载...

    《Java Swing图形界面开发与案例详解》源代码_java_baseballkn8_

    《Java Swing图形界面开发与案例详解》是一本深入讲解Java GUI编程的书籍,源代码提供了丰富的实例,适合Java初学者入门学习。Swing是Java AWT(Abstract Window Toolkit)库的扩展,它提供了更为丰富的组件和更现代...

    Android应用开发详解 及源码

    书中会涵盖各种布局管理器,如线性布局(LinearLayout)、相对布局(RelativeLayout)、网格布局(GridLayout)等,以及自定义视图和触摸事件处理。此外,还会讲解主题和风格的使用,使应用具有统一的视觉效果。 在...

    Java+Swing图形界面开发与案例详解实例代码

    在实际案例中,例如开发一个计算器应用,我们可能需要使用JButton来表示数字和运算符,JTextField来显示计算结果,利用GridLayout布局使按钮整齐排列,同时设置事件监听器处理按钮点击事件,执行相应的计算逻辑。...

    Java+Swing图形界面开发与案例详解》实例代码

    在"Java+Swing图形界面开发与案例详解"这本书中,作者深入浅出地介绍了如何使用Swing来设计和实现GUI应用。 该书的实例代码包含了从第一讲到第八讲的源码,逐步引导读者从基础到进阶掌握Swing的使用。以下是这些讲...

    《Android应用开发详解》配套光盘之源代码

    《Android应用开发详解》这本书是Android开发者们的重要参考资料,它深入浅出地讲解了Android应用开发的各个环节。配套光盘中的源代码则是书本理论知识的实践体现,为读者提供了丰富的实例,帮助理解和掌握Android...

    Java Swing图形界面开发与案例详解_带书签_高清完整版

    书中会讲解不同布局管理器,如FlowLayout、BorderLayout、GridLayout、CardLayout以及BoxLayout,如何根据需求选择合适的布局。 3. **事件处理**:Swing使用事件监听器模型来处理用户交互。书中可能会详细介绍如何...

    javaswing详解

    4. 自定义布局管理:通过实现LayoutManager接口或使用预定义的布局管理器,如FlowLayout、GridLayout、BorderLayout等,可以自由调整组件的位置和大小。 总结,Java Swing提供了丰富的GUI组件和强大的事件处理机制...

    andorid 各种view的详解 完整代码

    5. **ViewGroup**:`ViewGroup`是`View`的子类,用于组织和管理多个`View`,如线性布局(LinearLayout)、相对布局(RelativeLayout)、网格布局(GridLayout)等。`ViewGroup`自身不绘制任何内容,但负责布局内子`...

    《Java Swing图形界面开发与案例详解》源代码

    本资源——"《Java Swing图形界面开发与案例详解》源代码",显然是一个详细教程的配套源码,旨在帮助学习者深入理解和实践Swing的相关知识。 Swing组件库包含了窗口、按钮、文本框、滚动面板、菜单、表格、树形视图...

    [Java Swing图形界面开发与案例详解].王鹏等.扫描版

    Swing还提供了布局管理器(Layout Manager),如FlowLayout、BorderLayout、GridLayout和GridBagLayout,帮助开发者控制组件在窗口中的排列和大小。通过选择合适的布局管理器,可以轻松地创建出美观且响应式的用户...

Global site tag (gtag.js) - Google Analytics