Немодальный детский диалог - PullRequest
1 голос
/ 19 июля 2010

Я создаю немодальные дочерние диалоги из родительского диалогового класса и хочу поделиться данными класса своего родительского окна со всеми дочерними диалоговыми классами, которые я буду создавать. как бы я пошел сделать это?

1 Ответ

0 голосов
/ 19 июля 2010

Один из способов сделать это - использовать SetWindowLongPtr () :

SetWindowLongPtr(hwndParent, GWLP_USERDATA, (LONG_PTR)&parent_class);

Это установит поле USERDATA в родительском hwnd как адрес родительского класса.Затем в обработчике WM_INITDIALOG вызовите GetWindowLongPtr() на родительском HWND и приведите его обратно к правильному типу указателя.

A лучше способ сделать это - использовать CreateDialogParam () и в вашем обработчике WM_INITDIALOG вы получите значение, которое вы передаете в поле dwInitParam, которое будет указателем на ваш родительский класс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...