Величина возвращаемого значения определяет результат обработки сообщения; он зависит от отправленного сообщения.
Функция SendDlgItemMessage
Функция SendDlgItemMessage отправляет сообщение указанному органу управления в диалоговом окне.
Синтаксис
LRESULT SendDlgItemMessage( HWND hDlg, int nIDDlgItem, UINT Msg, WPARAM wParam, LPARAM lParam ); |
Параметры
hDlg
[in] Дескриптор диалогового окна, которое содержит орган управления.
nIDDlgItem
[in] Устанавливает идентификатор органа управления, который получает сообщение.
Msg
[in] Задает отправляемое сообщение.
wParam
[in] Устанавливает дополнительную специальную для сообщения информацию.
lParam
[in] Устанавливает дополнительную специальную для сообщения информацию.
Возвращаемое значение
Возвращаемое значение определяет результат обработки сообщения и зависит от отправленного сообщения.
Замечания
Функция SendDlgItemMessage не возвращает значения до тех пор, пока сообщение не будет обработано.
Использование SendDlgItemMessage идентично извлечению дескриптора заданного органа управления и вызова функции SendMessage.
Обработка сообщений от элементов диалога
Если с элементом управление происходит некоторое событие, то дочернее окно (элемент управления) посылает своему родительскому (диалоговому) окну сообщение WM_COMMAND, в котором младшее слово параметра wParam равно идентификатору окна элемента управления. Старшим словом параметра wParam является код опознавания (т.е. код того действия, которое произвел пользователь), а значением параметра lParam — описатель окна управления. Пример:
BOOL CALLBACK AboutDlgProc (HWND hDlg, UINT iMsg, WPARAM wParam, LPARAM lParam)
{
switch (iMsg)
{
…
case WM_COMMAND:
switch (LOWORD (wParam))
{
case IDOK:
…
return TRUE;
case IDCANCEL:
…
return TRUE;
}
break;
…
}
return FALSE;}