DM_GETDLGRECT
Сообщение
DM_GETDLGRECT позволяет получить экранные координаты диалогового окна.
Param1
0
Param2
Указатель на структуру SMALL_RECT в которой менеджер диалогов вернёт экранные координаты диалога.
Return
TRUE - данные скопированы или FALSE, если в качестве Param2 передано значение NULL.
Пример
case DN_INPUT:
{
const INPUT_RECORD* record=(const INPUT_RECORD *)Param2;
if (record->EventType==MOUSE_EVENT)
// отработаем щелчок мыши в LISTе диалога
if (Param1==ID && record->Event.MouseEvent.dwButtonState==FROM_LEFT_1ST_BUTTON_PRESSED && record->Event.MouseEvent.dwEventFlags!=DOUBLE_CLICK)
{
SMALL_RECT dlgRect;
Info.SendDlgMessage(hDlg, DM_GETDLGRECT, ID, &dlgRect;);
// щелкнули в LISTе
if (record->Event.MouseEvent.dwMousePosition.X > dlgRect.Left && record->Event.MouseEvent.dwMousePosition.X < dlgRect.Right
&& record->Event.MouseEvent.dwMousePosition.Y > dlgRect.Top && record->Event.MouseEvent.dwMousePosition.Y < dlgRect.Bottom)
{
// что-то делаем
}
}
}
Смотрите также: