Re[3]: Обработка значений контролов дочернего диалога
От: Jolly Roger  
Дата: 15.10.10 01:37
Оценка:
Здравствуйте, Sandro Peres, Вы писали:

SP>Я имею в виду следующее. Допустим, есть главное окно и его дочернее диалоговое с EDIT'ами, CHECKBOX'ами и т.п. Я могу получить введенное значение какого-нибудь EDIT'а:

SP>GetDlgItemText(hDlg, IDC_EDIT, buffer, sizeof(buffer));
SP>Как передать полученное значение buffer в главное окно?

По сути всё сводится к тому, что Вам уже предложили — заводите структуру (или класс), призакрытии дочернего окна заполняете её и в потом используете. А способов реализации этого много. Например, если Вы создаёте дочернее окно с помощью CreateWindowEx, то можете, как вариант, связать с ним указатель с помощью SetWindowLongPtr, а при закрытии получить его через GetWindowLongPtr и заполнить. Если Ваше дочернее окно — ресурсный диалог, показываемый модально, то можно передать адрес этой структуры в функцию DialogBoxParam (без ресурсов — DialogBoxIndirectParam) и в обработчике WM_INITDIALOG выполнить привязку к окну.

Также можно воспользоваться парой SetProp/GetProp, и даже просто глобальной переменной. В общем, возможностей достаточно много.
"Нормальные герои всегда идут в обход!"
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.