WM_NCLBUTTONDOWN
Сообщение выполняется при нажатии левой кнопки мыши в неклиентской области окна.
Параметры
Указанные параметры передаются системой.$wParam | Код события |
$lParam |
Двойное слово содержит: младшее слово = X-координата мыши относительно экрана старшее слово = Y-координата мыши относительно экрана |
Примечания
Смотрите функцию GUIRegisterMsg.См. также
WM_LBUTTONDOWNПример
#include <WindowsConstants.au3>
Global $k = 0
Global $assot[9][2] = [ _
[0x02, 'Заголовок'], _
[0x10, 'Левый нижний угол'], _
[0x11, 'Правый нижний угол'], _
[0x0A, 'Левый грань'], _
[0x0B, 'Правая грань'], _
[0x0C, 'Верхняя грань'], _
[0x0D, 'Левый верхний угол'], _
[0x0E, 'Правый верхний угол'], _
[0x0F, 'Нижняя грань']]
$Gui = GUICreate("WM_NCLBUTTONDOWN", 500, 150, -1, -1, $WS_OVERLAPPEDWINDOW)
GUICtrlCreateLabel('Функция WM_NCLBUTTONDOWN выполняется при нажатии левой кнопки мыши в неклиентской области окна.', 5, 5, 480, 34)
GUISetState()
GUIRegisterMsg(0x00A1, "WM_NCLBUTTONDOWN")
Do
Until GUIGetMsg() = -3
Func WM_NCLBUTTONDOWN($hWnd, $MsgId, $wParam, $lParam)
Local $i, $key, $X, $Y
$k += 1
; Координаты мыши
$X = BitAND($lParam, 0xFFFF) ; _WinAPI_LoWord
$Y = BitShift($lParam, 16) ; _WinAPI_HiWord
$info_ID = BitAND($wParam, 0xFFFF)
; $info_ID=$wParam
$k += 1
For $i = 0 To 8
If $wParam = $assot[$i][0] Then
$info_ID = $assot[$i][1]
ExitLoop
EndIf
Next
$Hex_ID = Hex(Int($wParam), 4)
If Not $info_ID Then $info_ID = $Hex_ID
WinSetTitle($Gui, '', 'Вызов ' & $k & ' раз, x=' & $X & ', y=' & $Y & ', ' & $info_ID)
EndFunc