Для работы с этой темой Вам понадобится проект, который мы создавали в шаге 34 . В него внесем изменения. В ресурсах на диалоговую панель необходимо поместить элемент управления строка редактирования с идентификатором IDC_EDIT2.
Заводим новую строку.
class CTestDlg : public CDialog // класс диалогового окна
{
......
CString m_edit; // даные
CString m_newedit; // вторая строка
};
Дополняем функцию DoDataExchange.
void CTestDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX); // функция папы
DDX_Text(pDX, IDC_EDIT1, m_edit); // наш обмен
DDX_Text(pDX, IDC_EDIT2, m_newedit); // наш обмен
DDV_MaxChars(pDX, m_newedit, 2); // проверка данных
}
Механизм DDV (Dialog Data Validation) позволяет устанавливать правила для вводимых значений. Одна из функций этого механизма DDV_MaxChars. Эта функция позволяет Вам ограничить количество вводимых символов. Для корректной работы DDV должна быть вызвана сразу после вызова DDX.
Количество функций DDV и DDX большое и их просмотреть вы можете в файле afxdd_.h или запросив справку DDV_. Запускайте. В поле редактирования больше двух символов Вы не введете!.
Используй DDV для контроля над вводимыми значениями.