RadioGroup.java
上传用户:luxiaowei
上传日期:2022-06-06
资源大小:58k
文件大小:2k
源码类别:

J2ME

开发平台:

Java

  1. /*
  2.  * RadioGroup.java
  3.  *
  4.  * Created on April 23, 2010, 5:35 PM
  5.  *
  6.  * To change this template, choose Tools | Template Manager
  7.  * and open the template in the editor.
  8.  */
  9. package com.framework;
  10. import java.util.Vector;
  11. /**
  12.  *
  13.  * @author Tejaswi
  14.  */
  15. public class RadioGroup {
  16.     Vector vector = new Vector();
  17.     /** Creates a new instance of RadioGroup */
  18.     public RadioGroup() {
  19.     }
  20.     public void addRadioControl(RadioControl control)
  21.     {
  22.         vector.addElement(control);
  23.         control.parentGroup = this;
  24.     }
  25.     protected void showNotify()
  26.     {
  27.          int selIndex = getSelectedIndex();
  28.          if(vector.size() > 0 && selIndex == -1)
  29.          {
  30.                ((RadioControl)vector.elementAt(0)).isChecked = true;
  31.          }
  32.     }
  33.     protected void selectionChanged(RadioControl control)
  34.     {
  35.         int selIndex = getSelectedIndex();
  36.         int compIndex = getIndex(control);
  37.         if(compIndex != selIndex)
  38.         {
  39.             for(int i = 0 ; i < vector.size() ; i ++)
  40.             {
  41.                 RadioControl radioControl = (RadioControl)vector.elementAt(i);
  42.                 if(i == compIndex)
  43.                 {
  44.                     radioControl.isChecked = true;
  45.                 }else{
  46.                     radioControl.isChecked = false;
  47.                 }
  48.                 
  49.             }
  50.         }
  51.         
  52.     }
  53.     public int getIndex(RadioControl control)
  54.     {
  55.         for(int i = 0 ; i < vector.size() ; i ++)
  56.         {
  57.             RadioControl radioControl = (RadioControl)vector.elementAt(i);
  58.             if(radioControl.equals(control))
  59.             {
  60.                 return i;
  61.             }
  62.         }
  63.         return -1;
  64.     }
  65.     public int getSelectedIndex()
  66.     {
  67.         for(int i = 0 ; i < vector.size() ; i ++)
  68.         {
  69.             RadioControl radioControl = (RadioControl)vector.elementAt(i);
  70.             if(radioControl.isChecked())
  71.             {
  72.                 return i;
  73.             }
  74.         }
  75.         return -1;
  76.     }
  77. }