WM_SIZE
Сообщение выполняется при изменении размеров окна.
Параметры
Указанные параметры передаются системой.$wParam | Способ, которым окно было изменено от 0 до 4 (мышкой или максимизация) 0 - Изменено мышкой 1 - Свёрнуто 2 - Развёрнуто на весь экран |
$lParam |
Двойное слово содержит размеры клиентской области окна: младшее слово = ширина клиентской области окна старшее слово = высота клиентской области окна |
Примечания
Смотрите функцию GUIRegisterMsg.См. также
WM_SIZINGПример
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Global $k = 0
$Gui = GUICreate("WM_SIZE", 370, 140, -1, -1, $WS_OVERLAPPEDWINDOW)
GUICtrlCreateLabel('Функция WM_SIZE выполняется при изменении размеров окна. Можно сделать особую установку положения и размера некоторых элементов интерфейса в момент изменения размеров окна', 5, 5, 360, 130)
GUISetState()
GUIRegisterMsg($WM_SIZE, "WM_SIZE")
Do
Until GUIGetMsg() = -3
Func WM_SIZE($hWnd, $Msg, $wParam, $lParam)
#forceref $Msg, $wParam
Local $w, $h
; Размеры клиентской области окна.
$w = BitAND($lParam, 0xFFFF) ; _WinAPI_LoWord
$h = BitShift($lParam, 16) ; _WinAPI_HiWord
$k += 1
WinSetTitle($Gui, '', 'Вызов ' & $k & ' раз, w=' & $w & ', h=' & $h)
Return $GUI_RUNDEFMSG
EndFunc