下拉列表JComboBox,列表框JList

1、下拉列表JComboBox

复制代码
public class Demo extends JFrame {
    public Demo() {
        setBounds(100, 100, 200, 100);
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        Container c = getContentPane();
        c.setLayout(new FlowLayout());
//        JComboBox cbb=new JComboBox();
//        cbb.addItem("汽车");cbb.addItem("火车");cbb.addItem("飞机");
        String items[]={"汽车","火车","飞机"};//创建条目字符串数组
        JComboBox cbb=new JComboBox(items);//创建下拉列表
//        cbb.setEditable(true);//可编辑
        c.add(cbb);
        setVisible(true);
    }

    public static void main(String[] args) {
        new Demo();
    }
}
复制代码

 2、列表框JList 

复制代码
public class Demo extends JFrame {
    public Demo() {
        setBounds(100, 100, 200, 200);
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        Container c = getContentPane();
        c.setLayout(null);//绝对布局
        String items[] = {"one", "two", "three", "four", "five", "six"};
        JList list = new JList(items);//创建列表框,整体添加
        //列表模型,单独添加
//        DefaultListModel model=new DefaultListModel();
//        for(String item:items){//foreach语句,遍历数组
//            model.addElement(item);
//        }
//        model.addElement("新增加的元素");
//        JList list=new JList();
//        list.setModel(model);//列表框载入列表模型
        /*SINGLE_SELECTION 单选
        SINGLE_INTERVAL_SELECTION 相邻元素可被连续选择
        MULTIPLE_INTERVAL_SELECTION 随便选*/
        list.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);//设置选择模式
        JScrollPane sp = new JScrollPane(list);//将列表框添加到滚动面板中
        sp.setBounds(20, 20, 100, 80);//设置滚动面板大小
        c.add(sp);
        JButton btn = new JButton("打印选择结果");
        btn.setBounds(20, 120, 120, 20);
        c.add(btn);
        btn.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                //获取列表框中被选中的所有元素<字符串型>
                java.util.List<String> values = list.getSelectedValuesList();
                for (String value : values) {//遍历被选中的元素
                    System.out.println(value);
                }
            }
        });
        setVisible(true);
    }

    public static void main(String[] args) {
        new Demo();
    }
}
复制代码

 

posted @   夕西行  阅读(415)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· 字符编码:从基础到乱码解决
· Open-Sora 2.0 重磅开源!
点击右上角即可分享
微信分享提示