`
凤凰涅磐
  • 浏览: 84162 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类
最新评论

SWT布局管理器

 
阅读更多

FillLayout 充满式布局管理器,组件的大小会尽量的充满整个容器。

RowLayout,行列式布局管理器,简单的排列组件

GridLayout,网格式布局管理器,非常强大,可以胜任所有的布局。

FormLayout,表格是布局管理器,通过创建组件各个边的距离来布局组件,和GridLayout一样强大。

StackLayout,堆栈式GridLayout,像书页一样,只显示最前面的组件。

 

FillLayout是最简单的布局类,把组件摆成一行或一列,并强制组件的大小一致,组件的高度与最高组件一直,宽度与最宽组件一致。简单的说,它里面的组件会尽量的充满这个容器。

Ø         不能折行。

Ø         默认排列是HORIZONTAL ,使用SWT.VERTICAL更改。将new FillLayout()改为new FillLayout(SWT.VERTICAL)。或filllayout.type = SWT.VERTICAL;

Ø         filllayout.spacing = 5;设置组件间的距离

Ø         filllayout.marginHeight = 10;设置边界距离(上下)

Ø         filllayout.marginWidth = 15; 设置边界距离(左右)

 

RowLayout可以使组件折行显示,也可设置边界距离和间距。还可以通过对每个组件setLayoutData方法设置RowData对象,RowData来设置组件的大小。RowLayout默认不强制每个组件大小相同。

Ø         rowLayout.wrap = false;设置不能自动折行,默认为true

Ø         rowLayout.pack = false;设置组件的大小相同,默认为true,即不相同。

Ø         rowLayout.justify = true;设置组件可以根据空间伸展。默认为false

Ø         rowLayout.type = SWT.VERTICAL;排列方式,默认为HORIZONTAL

Ø         rowLayout.marginLeft = 5;距离容器左边缘的距离

Ø         rowLayout.marginTop = 5; 距离容器上边缘的距离

Ø         rowLayout.marginRight = 5; 距离容器右边缘的距离

Ø         rowLayout.marginBottom = 5; 距离容器下边缘的距离

Ø         rowLayout.spacing = 0;设置组件间的距离

Ø         rowLayout.marginHeight;设置边界距离(上下)

Ø         rowLayout.marginWidth;设置边界距离(左右)

Ø         对组件setLayoutData方法设置RowData,来设置组件的大小。new RowData(int width, int height)

GridLayout的布局方式是把容器里的组件摆放在一个个格子里。通过GridData来设置每一个组件的外观形状。

Ø         gridLayout.numColumns = 3;设置列数,默认为1

Ø         gridLayout.makeColumnsEqualWidth = true;把组件等距分开,默认为false

Ø         可设置边界距离和间距,与其他布局管理器类似。

Ø         GridData

ü         gridData.horizontalSpan。设置组件占的列数

ü         HORIZONTAL_ALIGN_FILL对齐式充满,让组件充满所占的空间。New GridDataGridData. HORIZONTAL_ALIGN_FILL

ü         FILL_HORIZONTAL,水平抢占式充满,将所有水平方向的空闲空间都沾满

ü         GridData.FILL_BOTH双向抢占式

ü         gridData.horizontalAlignment=GridData.CENTER | GridData.BEGINNING | GridData.END | GridData.FILL

ü         gridData.horizontalIndent,使组件右移指定长度。

ü         gridData.widthHintgridData.heithtHint可以设置组件的高度和宽度,前提是不能与GridLayout的其他设置矛盾。

StackLayout

ü         设置最上层显示的组件,并将界面刷新,否则显示不出来。stackLayout.topControl=controlToDisplaycontainer.layout();

FormLayout 不会像GridLayout一样因容器大小变化而导致布局错位。

ü         new FormData(int widthint height)

ü         new FormAttachment(int numerator, int offset)。定位于容器numerator百分比,偏移offset

ü         new FormAttachment(Control control, int offset, int allignment)。相对于组件control的某个方向(SWT.TOP, SWT.BOTTOM, SWT.LEFT, SWT.RIGHT, 偏移offset

ü         formData.top | formData.left | formData.bottom | formData.right = formAttachment;

 

 

 

 

 

分享到:
评论

相关推荐

    swt 布局管理器 java中应用

    swt布局管理,各种布局方式,满足你多元化的需求。

    Eclipse_Swt_Jface_核心应用_部分19

    第7章 SWT布局管理器 98 7.1 布局管理器概述 98 7.1.1 绝对定位 98 7.1.2 托管定位 98 7.1.3 常见的布局管理器 100 7.2 FillLayout(充满式布局) 100 7.2.1 水平填充(默认)和垂直填充 101 7.2.2 ...

    容器与布局5管理器.pdf

    容器与布局5管理器.pdf,swt,eclipse插件开发笔记 容器与布局5管理器.pdf,swt,eclipse插件开发笔记 容器与布局5管理器.pdf,swt,eclipse插件开发笔记容器与布局5管理器.pdf,swt,eclipse插件开发笔记

    swt layout

    SWT中常用的布局管理器有如下一些。 ●FillLayout:子组件将以相同的大小填充到父组件中。 ● RowLayout:子组件将在父组件上一行或几行显示(设置相应的属性值,子组件会自动换行)。 ●GridLayout:网格式布局,子...

    swt做的学生管理系统

    简单的学生管理系统,只有增删改查功能。 布局使用了 Composite面板,自己写的入门级别的。为了是联系一下,以前没有接触过、算是了解。

    eclipse开发技术详解第7章

    本节将介绍SWT中布局管理器,布局管理器是最复杂的,也是最重要的。布局管理器有五种,分别是FillLayout(充满式布局)、RowLayout(行列式布局)、GridLayout(网格式布局)、FormLayout(表格式布局)和...

    miglayout:适用于Swing,SWT和JavaFX的官方MiG布局

    迁移适用于Swing,SWT和JavaFX的官方MiG布局对于手工编写GUI布局的Java开发人员来说,他们希望简单,强大和每个平台都能自动保真,而对于Swing,JavaFX和SWT中的当前布局管理器却不满意,MigLayout解决了您的布局...

    SWT(JFace)体验之模拟BorderLayout布局

    SWT中没有AWT的BorderLayout布局管理器。下面是SWT下的自定义实现: BorderLayout.java 代码如下:package swt_jface.demo2; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Point; import org....

    MiG Layout Manager for Java Swing & SWT-开源

    MiG Layout是功能最丰富,最灵活的Java Swing和SWT Layout Manager。 MiG Layout可以生成流畅的,基于网格的,绝对的(带有链接),分组的和对接的布局,您再也不必切换到另一个布局管理器了!

    PluginPDF&Notes.7z

    插件开发核心技术,主要介绍插件开发的核心知识要点...View: Draw2d 图形化界面 Control 核心 mode 用户设计 (绘图,着色,图形布局管理,图形缩放控制) SWT 画布 Canvas,处理所有图像显示及交互事件 (本地SWT层)

    eclipse插件开发,第一部分,前16章节----下载不扣分,回帖加1分,欢迎下载,童叟无欺

    07第5章 容器与布局5管理器.pdf 08第6章 界面开发工具.pdf 09第7章 高级控件使用.pdf 10第8章 SWT/JFace的事件处理.pdf 11 第二篇 核心技术.pdf 12 第9章 Eclipse插件体系结构.pdf 13 第10章 开发第一个插件...

    java课程设计论文个人通讯录管理系统.doc

    然后,用java解释器运 行主类: 主界面 六、具体分工 我参与设计添加页面,添加方法,删除页面,查询部分操作资以及源管理模块,背景 框格布局操作。 添加界面 删除界面 七、 程序设计 1. 主程序设计模块 package ...

    Eclipse插件开发笔记—PDF—带目录

    第5章 容器与布局管理器 第6章 界面开发工具 第7章 高级控件使用 第8章 SWT/Jface的事件处理 第二篇 核心技术 第9章 Eclipse插件体系结构 第10章 开发 第一个插件项目 第11章 操作(Actions) 第12章 视图(Views) 第...

    JAVA程序开发大全---上半部分

    17.4 SWT中的布局管理器 302 17.4.1 RowLayout布局管理器 302 17.4.2 FillLayout布局管理器 304 17.4.3 GridLayout布局管理器 305 17.4.4 FormLayout布局管理器 308 17.5 SWT中的事件模型 309 17.6 本章小结 313 第...

    达内2011年在线测评系统5天全部源码ELTS_day01-day05

    2 布局管理器(相对位置布局, 组件的大小和位置有布局控制) A BorderLayout (边框布局) 将一个面板,分为东南西北中,每个位置只能放一个控件 中会自动的向其他的四个方法填充 ---------------------------- | 北...

    miglayout-3.7.1.jar

    MiGLayout - 用于 Swing、SWT 和 JavaFX 的 Java 布局管理器 com.miglayout/miglayout/3.7.1/miglayout-3.7.1.jar

    miglayout-3.5.5.jar

    MiGLayout - 用于 Swing、SWT 和 JavaFX 的 Java 布局管理器 com.miglayout/miglayout/3.5.5/miglayout-3.5.5.jar

    miglayout-3.6.2.jar

    MiGLayout - 用于 Swing、SWT 和 JavaFX 的 Java 布局管理器 com.miglayout/miglayout/3.6.2/miglayout-3.6.2.jar

    miglayout-3.7.4.jar

    MiGLayout - 用于 Swing、SWT 和 JavaFX 的 Java 布局管理器 com.miglayout/miglayout/3.7.4/miglayout-3.7.4.jar

Global site tag (gtag.js) - Google Analytics