C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 44 - Перегрузка OnOk / Диалоговые окна / Visual C++

Шаг 44 - Перегрузка OnOk

В прошлом шаге мы с Вами убедились, что данные от элемента управления получить не удается. Нам нужно какое-то событие, которое происходит при нажатии на кнопку OK, чтобы вернуть данные. И такое событие есть. Давайте его перегрузим и добавим свой код. Сделать это можно двойным щелчком левой кнопки мыши по кнопке Ok.

44_1.gif (9184 b)

У нас появится функция:

void CMyDialog::OnOK() 
{
	// TODO: Add extra validation here
	CDialog::OnOK();
}

Вот в нее мы и напишем код передачи данных от элемента в нашу переменную:

void CMyDialog::OnOK() 
{
	// TODO: Add extra validation here
	
	m_Ed1.GetWindowText(m_Ed1_str); 
	CDialog::OnOK();
}

И теперь мы можем получать данные назад используя эту переменную.

void CTest6Doc::OnTestTest() 
{
	cm.m_Ed1_str ="Test";
	cm.m_Ed2 = "extern";
	cm.DoModal(); 
	AfxMessageBox(cm.m_Ed1_str);  
}

Запускаем и редактируем данные.

44_2.gif (3825 b)

А после закрытия диалога данные изменены.

44_3.gif (2249 b)

Мы практически повторили механизм DDX.


| |
Автор Каев Артем.
[AD]