Find selected item of a JList and display it in real time

后端 未结 3 1448
-上瘾入骨i
-上瘾入骨i 2020-12-14 19:13

I have a JList, where i am displaying some ID\'s. I want to capture the ID the user clicked and dis play it on a JLabel.

String sel         


        
3条回答
  •  孤街浪徒
    2020-12-14 20:11

    A simple example would be like below using listselectionlistener

    import java.awt.Dimension;
    import java.awt.FlowLayout;
    
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JList;
    import javax.swing.event.ListSelectionEvent;
    import javax.swing.event.ListSelectionListener;
    
    public class JListDemo extends JFrame {
    
        public JListDemo() {
    
            setSize(new Dimension(300, 300));
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setLayout(new FlowLayout());
            final JLabel label = new JLabel("Update");
            String[] data = { "one", "two", "three", "four" };
            final JList dataList = new JList(data);
    
            dataList.addListSelectionListener(new ListSelectionListener() {
    
                @Override
                public void valueChanged(ListSelectionEvent arg0) {
                    if (!arg0.getValueIsAdjusting()) {
                      label.setText(dataList.getSelectedValue().toString());
                    }
                }
            });
            add(dataList);
            add(label);
    
            setVisible(true);
    
        }
    
        public static void main(String args[]) {
            new JListDemo();
        }
    
    }
    

提交回复
热议问题