SWT程序开发(六)—Combo下拉框组件

本文档介绍如何在SWT程序中使用Combo下拉框组件。通过创建一个简单的Java程序,展示了如何初始化、添加选项、监听用户选择变化以及设置默认选中项。示例代码创建了一个具有三个预设选项的Combo组件,并实时更新Label显示用户选择的内容。

package demotest;

import org.eclipse.swt.*;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.widgets.*;

/**
 * @author mositure
 * 学习Combo下拉框组件
 */
public class ComboSample {

    /**
     * @param args
     */
    public static void main(String[] args) {
        final Label label;
        
        //创建一个display对象
        Display display = new Display();
        //shell是程序的主窗体
        Shell shell=new Shell(display);
        //设置窗体大小
        shell.setSize(400, 350);
        //设置主窗体的标题
        shell.setText("Combo组件");
        //样式
//        SWT.NONE:默认式样。
//        SWT.READ_ONLY:只读。
//        SWT.SIMPLE:无须单击下拉框,列表会一直显示。
        //常用方法
//        add(String string):在Combo中增加一项。
//        add(String string,int index):在Combo的第index项后插入一项。
//        deselectAll():使Combo组件中的当前选择项置空。
//        removeAll():将Combo中的所有选项清空。
//        setItems(String[] items):将数组中的各项依次加入到Combo中。
//        select(int index):将Combo的第index+1项设置为当前选择项。
        
        final Combo combo=new Combo(shell,SWT.NONE);
        combo.setBounds(10,10,130,35);
        combo.select(0);//默认选中第一个
        for(int i=1;i<=3;i++){
            combo.add("第"+i+"个");  //循环添加选项
        }
        
        label=new Label(shell,SWT.WRAP);   //创建标签,可自动换行
        label.setBounds(10,50,100,35);
        label.setText("你选择的是:");
        label.setVisible(true);
        combo.addModifyListener(new ModifyListener() {
            @Override
            public void modifyText(ModifyEvent e) {
                label.setText("你选择的是:"+combo.getText());
            }
        });
        
        //打开主窗体
        shell.open();
        //如果主窗体没有关闭
        while(!shell.isDisposed()){ 
            //如果display不忙
            if(!display.readAndDispatch()){  
                  //休眠
                display.sleep();  
            }
        }
        //销毁display
        display.dispose();      
    }

}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

骑猪撞树-小码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值