SWT/JFACE 第五天,常用组件

swt的常用组件button ,text ,combo,list ,还有一些容器类composite ,group,这里选择几个,列写简单的用法
不写解释了,因为代码很简单,而且代码上的注释足以说明.
1,combo  和text
package com.test;

import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;

public class CTShow {

    private static List list;
    private static Combo combo;
    private static Text text;
    public static void main(String[] args) {
        final Display display = Display.getDefault();
        final Shell shell = new Shell();
        shell.setSize(478, 120);
        shell.setText("combo and text");
        shell.open();
        //构造text
        text = new Text(shell, SWT.BORDER);
        text.setBounds(160, 34, 281, 20);
        //构造combo
        combo = new Combo(shell, SWT.NONE);
        combo.setItems(new String[] {"one", "two", "three", "four"});
        combo.setData("one", "1");
        combo.setData("two", "2");
        combo.setData("three", "3");
        combo.setData("four", "4");
        combo.setBounds(28, 34, 102, 20);
        //添加监听器
        combo.addSelectionListener(new SelectionAdapter(){
            public void widgetSelected(SelectionEvent e){
                String selText = combo.getText();
                String selValue = (String)combo.getData(selText);
                text.setText("text: " + selText + " value: " + selValue);
            }});
       
        shell.layout();
        //消息循环
        while (!shell.isDisposed()) {
            if (!display.readAndDispatch())
                display.sleep();
        }
    }

}
2,list、 button 、messagebox
package com.test;

import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.List;
import org.eclipse.swt.widgets.Shell;

public class LBMShow {

    private static List list;
    /** *//**
     * Launch the application
     * @param args
     */
    public static void main(String[] args) {
        final Display display = Display.getDefault();
        final Shell shell = new Shell();
        shell.setSize(192, 217);
        shell.setText("list and button and messagebox");
        //

        shell.open();
        //构造list
        list = new List(shell, SWT.BORDER|SWT.MULTI|SWT.V_SCROLL);
        list.setItems(new String[] {"语文", "数学", "英语", "物理", "化学"});
        list.setData("化学", "HX");
        list.setData("物理", "WL");
        list.setData("语文", "YW");
        list.setData("数学", "SX");
        list.setData("英语", "YY");
        list.setBounds(29, 25, 100, 75);
        //构造button
        final Button button = new Button(shell, SWT.NONE);
        button.setText("提示");
        button.setBounds(48, 121, 58, 22);
        //添加监听器
        button.addSelectionListener(new SelectionAdapter(){
            public void widgetSelected(SelectionEvent e){
                for (String str : list.getSelection()) {
                    //messagebox提示
                    MessageDialog.openInformation(null, null, str);
                }
            }
        });
       
        shell.layout();
        //消息循环
        while (!shell.isDisposed()) {
            if (!display.readAndDispatch())
                display.sleep();
        }
    }

}
3,group组
package com.test;

import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;

public class GroupShow {
    private static Text text;
    public static void main(String[] args) {
        final Display display = Display.getDefault();
        Shell shell = new Shell();
        shell.setText("group");
        shell.open();
        //构造group
        final Group group = new Group(shell, SWT.NONE);
        group.setText("   组  ");
        group.setBounds(41, 28, 143, 100);
        //把按钮放在group中,注意new Button(group这里
        final Button button = new Button(group, SWT.NONE);
        button.setText("按钮");
        button.setBounds(42, 59, 48, 22);
        //构造text
        text = new Text(group, SWT.BORDER);
        text.setBounds(32, 28, 80, 25);
        //
        shell.layout();
        while(!shell.isDisposed()){
            if (!display.readAndDispatch()){
                display.sleep();
            }
        }
    }
}

posted @ 2010-08-23 00:10  夜色狼  阅读(320)  评论(0编辑  收藏  举报