当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:15:00  来源:本站整理

组织SWT/JFace控件的利器:Layout[Java编程]

赞助商链接



  本文“组织SWT/JFace控件的利器:Layout[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

在可视化编程时代,大大都可视化的GUI开辟工具都供应了按一定法则布列Form中的控件的功效.但是关于Java来说,支持可视化开辟的工具并不多,固然有一些这样的工具,但它们大多是第三方的产品,安定性方面有一些欠缺.因此,在很多时刻利用Java编写GUI程序时,就要利用筹划(Layout)来掌握Form上的控件的位置.

本文主要谈论若何利用SWT中供应的筹划来安置控件的位置,并通过实例来演示这一历程.在SWT中供应了5种筹划:FillLayout, RowLayout, GridLayout, FormLayout, and StackLayout.下面我将具体谈论这5种筹划的利用.

FillLayout

FillLayout是最简单的筹划.它可以将控件横向或纵向举行布列,并且此中每个控件都有一样的宽度或高度.利用FillLayout普通分为2步.

1. 成立一个FillLayout对象.

2. 利用setLayout办法设置Shell对象的筹划.

下面代码利用FillLayout在Shell上放了3个按钮,代码以下:

package layout;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.*;
import org.eclipse.swt.layout.*;
public class TestFillLayout
{
 public static void main(String[] args)
 {
  Display display = new Display();
  Shell shell = new Shell(display, SWT.DIALOG_TRIM);
  shell.setText("FillLayout演示");
  shell.setSize(400, 300);
  // 设置shell的筹划
  FillLayout layout = new FillLayout();
  shell.setLayout(layout);
  // 向shell增添控件
  Button button1 = new Button(shell, SWT.PUSH);
  button1.setText("按钮1");
  Button button2 = new Button(shell, SWT.PUSH);
  button2.setText("按钮2");
  Button button3 = new Button(shell, SWT.PUSH);
  button3.setText("按钮3");
  shell.open();
  while (!shell.isDisposed())
  {
   if (!display.readAndDispatch())
   {
    display.sleep();
   }
  }
  display.dispose();
 }
}

界面如图1所示.

图 1 利用横向FillLayout的Shell界面

假如想要Shell上的控件纵向布列,可以在成立筹划时将type属性设置成SWT.VERTICAL.代码以下:

FillLayout layout = new FillLayout();
layout.type = SWT.VERTICAL;
shell.setLayout(layout);

图2是控件纵向布列的效果图

图 2 利用纵向FillLayout的Shell界面

FillLayout的构造函数重载了2次.此中一个构造函数有一个参数,这个参数就是type.因此,我们也可以通过FillLayout的构造函数对type赋值.

shell.setLayout(new FillLayout(SWT.VERTICAL));


  以上是“组织SWT/JFace控件的利器:Layout[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 组织SWT/JFace控件的利器:Layout
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .