Java捕获选项事件ItemEvent


Java捕获选项事件ItemEvent:

  1. package com.han;  
  2.   
  3. import java.awt.Container;  
  4. import java.awt.FlowLayout;  
  5. import java.awt.event.ItemEvent;  
  6. import java.awt.event.ItemListener;  
  7. import java.util.Vector;  
  8.   
  9. import javax.swing.DefaultComboBoxModel;  
  10. import javax.swing.JComboBox;  
  11. import javax.swing.JFrame;  
  12.   
  13. /** 
  14.  * 捕获选项事件ItemEvent 
  15.  * @author HAN 
  16.  * 
  17.  */  
  18. public class ItemEvent_1 extends JFrame {  
  19.   
  20.     /** 
  21.      *  
  22.      */  
  23.     private static final long serialVersionUID = -9005090453541883935L;  
  24.   
  25.     public ItemEvent_1() {  
  26.         // TODO Auto-generated constructor stub   
  27.         Container container = getContentPane();  
  28.         container.setLayout(new FlowLayout());  
  29.         Vector<String> vector = new Vector<String>();  
  30.         for (int i = 1; i<6; i++)   
  31.             vector.add("选项" + i);  
  32.         DefaultComboBoxModel<String> defaultComboBoxModel =   
  33.                 new DefaultComboBoxModel<String>(vector);  
  34.         JComboBox<String> comboBox = new JComboBox<String>(defaultComboBoxModel);  
  35.         container.add(comboBox);  
  36.         comboBox.addItemListener(new ItemListener() {  
  37.   
  38.             @Override  
  39.             public void itemStateChanged(ItemEvent e) {  
  40.                 // TODO Auto-generated method stub   
  41.                 String item = e.getItem().toString();  
  42.                 int stateChange = e.getStateChange();  
  43.                 if (stateChange == ItemEvent.SELECTED) {  
  44.                     System.out.println("此次事件由选中“" + item + "”触发!");  
  45.                 }else if (stateChange == ItemEvent.DESELECTED) {  
  46.                     System.out.println("此次事件由取消选中“" + item + "”触发!");  
  47.                 }else {  
  48.                     System.out.println("此次事件由其它原因触发!");  
  49.                 }  
  50.             }  
  51.               
  52.         });  
  53.     }  
  54.   
  55.     /** 
  56.      * @param args 
  57.      */  
  58.     public static void main(String[] args) {  
  59.         // TODO Auto-generated method stub   
  60.         ItemEvent_1 frame = new ItemEvent_1();  
  61.         frame.setTitle("选项事件示例");  
  62.         frame.setVisible(true);  
  63.         frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);  
  64.         frame.setBounds(00300100);  
  65.     }  
  66.   
  67. }  

相关内容