Иллюстрированный самоучитель по Visual Studio.Net


Создание и связывание переменных - часть 2


Необходимо помнить, что простым элементам -управления (static Control, Button Control или Edit Control) обычно ставят в соответствие простые переменные типа int, BOOL или cstring. Более сложным элементам (Spin Control, Slider Control) обычно соответствуют переменные, которые являются объектами классов (CSpinButtonCtrl, CSliderCtrl). Сейчас мы введем в диалоговый класс переменные, которые мы свяжем (ассоциируем) с элементами управления. Некоторые из этих переменных мы уже заочно использовали в коде функций-обработчиков.

  1. Откройте окно диалога, установите фокус на счетчик (IDC_SPIN) и вызовите контекстное меню.

  2. В меню выберите команду Variable — появится мастер Add Variable Wizard.

  3. В окне мастера установите флажок Control variable.

  4. Переключатель Control-Value установите в положение Control.

  5. В окне Control ID выберите идентификатор элемента IDC_SPIN.

  6. В окне Variable Name задайте имя переменной m_ Spin.

  7. В окне Access выберите тип доступа private.

  8. В окне Comment задайте комментарий: Счетчик кодов.

  9. Нажмите кнопку Finish.

В окне Class View отыщите новый узел Variables, раскройте его и щелкните два раза мышью элемент m_Spin. В окне LookDlg.h вы увидите, что мастер вставил декларацию:

//====== Счетчик кодов

CSpinButtonCtrl m_Spin;

Найдите тело функции DoDataExchange и убедитесь, что в ней появилась строка:

DDX_Control (pDX, IDC_SPIN, m__Spin) ;

которая связывает элемент IDC_SPIN с объектом m_spin. Теперь повторите все действия для элемента IDC_SLIDER. В классе CLookDig должен появиться объект m_Slider класса CSliderCtrl.

В окне диалога осталось еще довольно много элементов управления, с которыми не связаны никакие переменные. Сейчас мы создадим эти переменные, но предварительно напомним, что элементы типа static Control (поле текста) могут быть как управляемыми, так и нет. В последнем случае все они должны иметь один и тот же идентификатор IDC_STATIC. Мы будем управлять шестью элементами типа static и одним элементом (IDC_CURRENT) типа Edit Control.


Начало  Назад  Вперед