1
如果我在任何複選框所有以前的複選框必須得到遏制 單擊「我的邏輯作品」 如果我取消選中複選框,然後後,所有的複選框必須得到選中 「怎麼做」 MyLogic工程風暴而不是其他車型 做什麼黑莓 - 對於複選框組自定義邏輯
//well what i want to do is i have 5 checkboxes
class myscreen
{
chk_service = new CheckboxField[5];
chk_service[0]= new CheckboxField("1",true)
chk_service[1]= new CheckboxField("2",false)
chk_service[2]= new CheckboxField("3",false)
chk_service[3]= new CheckboxField("4",false)
chk_service[4]= new CheckboxField("5",false)
CheckboxFieldChangeListener obj =
new CheckboxFieldChangeListener(chk_service);
chk_service[0].setChangeListener(obj);
chk_service[1].setChangeListener(obj);
chk_service[2].setChangeListener(obj);
chk_service[3].setChangeListener(obj);
chk_service[4].setChangeListener(obj);
hm4 = new HorizontalFieldManager();
hm4.add(chk_service[0]);
hm4.add(chk_service[1]);
hm4.add(chk_service[2]);
hm4.add(chk_service[3]);
hm4.add(chk_service[4]);
add(hm4);
}
public CheckboxFieldChangeListener (CheckboxField[] arrFields)
{
m_arrFields = arrFields;
}
public void fieldChanged(Field field, int context)
{
if(true == ((CheckboxField) field).getChecked())
{
for(int i = 0; i < m_arrFields.length; i++)
{
if(m_arrFields[i]==field)
{
//a[j]=i;
j++;
break;
}
else
{
CheckboxField oField = m_arrFields[i];
oField.setChecked(true);
}
}
}
a[k] = j;
if(false == ((CheckboxField) field).getChecked())
{
for(int i =field.getIndex(); i < m_arrFields.length; i++)
{
if(m_arrFields[i]==field)
{
//a[j]=i;
j++;
break;
}
else
{
CheckboxField oField = m_arrFields[i];
oField.setChecked(false);
}
}
}
}
}