Popular Posts
SwiXml - Layout BorderLayout BorderLayoutPane.xml <?xml version="1.0" encoding="UTF-8"?> <panel layout="BorderLayout... DNS SERVER LIST Google 8.8.8.8 8.8.4.4 TWNIC 192.83.166.11 211.72.210.250 HiNet 168.95.1.1 168.95.192.1 Seednet 北區 DNS (台北, 桃園, 新竹, 宜蘭, 花蓮, 苗栗) 139.... Enable SSL connection for Jsoup import org.jsoup.Connection; import org.jsoup.Jsoup; import javax.net.ssl.*; import java.io.IOException; import java.security.KeyManagement...
Stats
ListSelectionListener & ItemListener
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Toolkit;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;

import javax.swing.DefaultListModel;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;

public class StatusChange extends JFrame {

    public StatusChange() {
        getContentPane().setLayout(new FlowLayout());

        DefaultListModel model = new DefaultListModel();
        JList list = new JList(model);
        model.addElement("one");
        model.addElement("two");
        model.addElement("three");
        model.addElement("four");
        model.addElement("five");
        model.addElement("six");
        model.addElement("seven");
        model.addElement("eight");
        model.addElement("nine");
        list.addListSelectionListener(new ListSelectionListener() {
            @Override
            public void valueChanged(ListSelectionEvent e) {
                JList list = (JList) e.getSource();

                // execute twice
                System.out.printf("=====%s=====%n", list.getSelectedValue());
                if (list.getValueIsAdjusting()) {
                    // execute once
                    System.out.println(list.getSelectedValue());
                }
            }
        });
        getContentPane().add(new JScrollPane(list));

        JComboBox combo = new JComboBox();
        combo.addItem("one");
        combo.addItem("two");
        combo.addItem("three");
        combo.addItem("four");
        combo.addItem("five");
        combo.addItem("six");
        combo.addItem("seven");
        combo.addItem("eight");
        combo.addItem("nine");

        combo.addItemListener(new ItemListener() {
            @Override
            public void itemStateChanged(ItemEvent e) {
                JComboBox combo = (JComboBox) e.getSource();
                // execute twice (occurs on selected & deselected)
                System.out.printf("-----%s-----%n", combo.getSelectedItem());
                if (e.getStateChange() == e.SELECTED) {
                    // execute once
                    System.out.println(combo.getSelectedItem());
                }
            }
        });
        getContentPane().add(combo);

        pack();
        Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();
        setLocation((screen.width - this.getWidth()) / 2, (screen.height - this.getHeight()) / 2);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        new StatusChange();
    }

}