zoukankan      html  css  js  c++  java
  • 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();
                }
            }
        }
    }

  • 相关阅读:
    使用IOCP完成端口队列做任务队列
    对Zlib单元进行再封装
    XmlReader/XmlWriter 类
    TextReader/TextWriter 的类
    LINQ to XML
    Xml序列化
    动态Linq(结合反射)
    设计模式总结
    深入了解.Net上下文
    应用程序域
  • 原文地址:https://www.cnblogs.com/zqmingok/p/1806061.html
Copyright © 2011-2022 走看看