помогите с дизактивацией RadioGroup
У меня возникла проблема.
Даны две компоненты: RadioGroup1 & RadioGroup2.
В RadioGroup1 есть кнопка, которой необходимо выключить RadioGroup2.
Я делаю следущее:
switch(RadioGroup1->ItemIndex) {
case 1 : RadioGroup1->ItemIndex == 2;
{
RadioGroup2->Enabled = false;
}
сase 2 : RadioGroup1->ItemIndex == 1;
{
RadioGroup2->Enabled = true;
}
}
// ItemIndex == 2 - та самая кнопка.
прога ошибок не выдаёт, но всё делает так, как будто этого кода и нет. Что я делаю не правильно?
Всем привет!!!
У меня возникла проблема.
Даны две компоненты: RadioGroup1 & RadioGroup2.
В RadioGroup1 есть кнопка, которой необходимо выключить RadioGroup2.
Я делаю следущее:
switch(RadioGroup1->ItemIndex) {
case 1 : RadioGroup1->ItemIndex == 2;
{
RadioGroup2->Enabled = false;
}
сase 2 : RadioGroup1->ItemIndex == 1;
{
RadioGroup2->Enabled = true;
}
}
// ItemIndex == 2 - та самая кнопка.
прога ошибок не выдаёт, но всё делает так, как будто этого кода и нет. Что я делаю не правильно?
Попробуй так:
switch(RadioGroup1->ItemIndex) {
case 1 : RadioGroup1->ItemIndex == 2;
{
RadioGroup2->Enabled = false;
break;
}
сase 2 : RadioGroup1->ItemIndex == 1;
{
RadioGroup2->Enabled = true;
break;
}
}
Прошел бы под отладчиком - сразу же увидел бы, что позабыт break в switch, как верно заметил Saris.
P.S.
Программа имеет свойство делать именно то, что вы написали, а не то, что имели ввиду...:-)
switch(RadioGroup1->ItemIndex) {
case 1 : RadioGroup1->ItemIndex == 2;
{
RadioGroup2->Enabled = false;
}
сase 2 : RadioGroup1->ItemIndex == 1;
{
RadioGroup2->Enabled = true;
}
}
Видимо имелось в виду следующее?
switch(RadioGroup1->ItemIndex) {
case 1:
RadioGroup1->ItemIndex = 2; // присваивание, а не сравнение!
RadioGroup2->Enabled = false;
break;
сase 2:
RadioGroup1->ItemIndex = 1; // аналогично
RadioGroup2->Enabled = true;
break;
}
Видимо имелось в виду следующее?
Ребята, огромное спасибо за помощь.
break я действительно пропустил.
Но основная ошибка оказалась в том, что сам код я записал не в RadioGroup.
Возникла также интересная ситуация, когда код в данной ситуации не выдавал логических действий, т.е. одна из кнопок игнорировала присвоенное ей событие. В данной ситуации используйте такой код:
switch(RadioGroup1->ItemIndex) {
default : RadioGroup1->ItemIndex == 1;
{
RadioGroup2->Enabled = false;
}
сase 1 : RadioGroup1->ItemIndex == 0;
{
RadioGroup2->Enabled = true;
}
}
Здесь 0 - значение по умолчанию, а то что в default - это первая кнопка.
Ну вот и все спасибо ещё раз за помощь.