欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Swing的JLIST练习教程

程序员文章站 2022-04-27 19:44:23
...

新建一个名为:SimpleTable的java类

import javax.swing.*;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import java.awt.*;

public class SimpleTable
{

    public static void main(String[] args)
    {
        JFrame window = new JFrame("滚动测试");
        window.setResizable(true);
        window.setLayout(new BorderLayout());
        window.setBounds(100,100,500,500);
        String listdata[]={"小城","小杰","小金","小李","小王","小黄","小样","小柯","小谁","捷克","陈东","陈东","李洁珂","生怕","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东","陈东"};
        JList list = new JList(listdata);
        list.setBounds(0,0,100,400);
        DefaultListCellRenderer renderer = new DefaultListCellRenderer();
        renderer.setHorizontalAlignment(SwingConstants.CENTER);
        list.setCellRenderer(renderer);
        final int[] clicks = {0};
        list.addListSelectionListener(new ListSelectionListener() {
            @Override
            public void valueChanged(ListSelectionEvent e) {
                clicks[0] = clicks[0] +1;
                if(clicks[0]>1){
                    clicks[0]=0;
                }
                else
                {
                    JDialog dialog = new JDialog(window,true);
                    dialog.setSize(300,300);
                    JLabel label = new JLabel("s",JLabel.CENTER);
                    label.setFont(new Font("黑体",Font.PLAIN,30));
                    String value = (String) list.getSelectedValue();
                    label.setText("你的选择是:"+value);
                    dialog.setLayout(new BorderLayout());
                    label.setSize(30,30);
                    dialog.setLocation(200,200);
                    dialog.add(label,BorderLayout.CENTER);
                    dialog.setVisible(true);
                }

            }
        });
        JScrollPane scrollPane = new JScrollPane(list);
        scrollPane.setPreferredSize(new Dimension(300,300));
        window.add(scrollPane);
        window.setVisible(true);
    }
}