Тема: Не работает UpdateData() в обработчике OnSelChange для ComboBox

Проблема в следующем:
Надо, чтобы при выборе определенных значений в Combo Box разблокировались
одни элементы управления на немодальной форме и заблокировались другие.
Вызываю в обработчике события OnSelChange для комбобокса функцию UdateData(TRUE), но
данные не обновляются, т.е. управляющая переменная, связанная с комбобоксом,
имеет старое значение, присвоенное в OnInitDialog.
Желаемый эффект происходит только при повторном выборе той же строчки в комбобоксе.
Что надо сделать, чтобы срабатывало с первого раза?

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

> Olga
Проверь прописана ли соотвествующая DDX функция в диалоге. Насколько помню, визард сам ее не прописывает. Ну, а если прописано, то и отдебажить UpdateData можно.
Учи MFC.

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

> Olga
1) А причем тут ObjectARX?
2) Я бы в этом обработчике события не использовал бы UpdateData, так как подозреваю, что в этот момент данные из ComboBox еще не обновились. Но это IMHO.

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

Да, все прописано. При Debug при заходе в DoDataExchange данные меняются при втором щелчке на той же строчке в комбобоксе или в обработчике щелчка по кнопке OK (или любой другой).

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

А как же мне сделать так, чтобы при выборе значения в комбобоксе разблокировались одни элементы и заблокировались другие?

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

А ObjectArx потому что форма будет работать в AutoCAD (от CAcUiDialog)

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

> Olga
Очень просто:

void MyDialog::OnCbnSelchangeMyComboBox()
{
  CWnd *wnd_Elem1 = this->GetDlgItem(IDC_MyElem1);
  CWnd *wnd_Elem2 = this->GetDlgItem(IDC_MyElem2);
  if (wnd_Elem1) wnd_x->EnableWindow(TRUE);
  if (wnd_Elem2) wnd_y->EnableWindow(FALSE);
}

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

Спасибо, попробую!

Re: Не работает UpdateData() в обработчике OnSelChange для ComboBox

> Olga
Понятно. Хотя прямого отношения к ObjectARX это не имеет - это обычный MFC.
P.S.: В предыдущем моем сообщении смотри подправленный код.