WM_PARENTNOTIFY訊息
當子代窗口發生重大動作時,傳送至視窗。 此訊息現在已擴充為包含 WM_POINTERDOWN 事件。 建立子視窗時,系統會在建立視窗的 CreateWindow 或 CreateWindowEx 函式傳回之前傳送WM_PARENTNOTIFY。 當子視窗被終結時,系統會先傳送訊息,再進行任何處理以終結視窗。
視窗會透過其 WindowProc 函式接收此訊息。
![重要]
傳統型應用程式應能感知 DPI。 如果您的應用程式沒有 DPI 感知,指標訊息和相關結構中包含的螢幕座標可能會因為 DPI 虛擬化而顯示不正確。 DPI 虛擬化可為非 DPI 感知且預設為作用中的應用程式提供自動縮放支援(使用者可以將其關閉)。 如需詳細資訊,請參閱 撰寫高 DPI Win32 應用程式。
#define WM_PARENTNOTIFY 0x0210
參數
-
wParam
-
wParam 的低序字會指定要通知父系的事件。 高階字的值取決於低序字的值。 此參數可以是下列其中一個值。
LOWORD(wParam) 意義 - WM_CREATE
- 0x0001
正在建立子視窗。
HIWORD(wParam) 是子視窗的標識碼。
lParam 是子視窗的句柄。- WM_DESTROY
- 0x0002
子視窗正在終結。
HIWORD(wParam) 是子視窗的標識碼。
lParam 是子視窗的句柄。- WM_LBUTTONDOWN
- 0x0201
使用者已將游標放在子視窗上方,然後按下滑鼠左鍵。
HIWORD(wParam) 未定義。
lParam 是游標的 x 座標是低序字,而游標的 Y 座標則是高序字。- WM_MBUTTONDOWN
- 0x0207
使用者已將游標放在子視窗上方,並已按下滑鼠中間按鈕。
HIWORD(wParam) 未定義。
lParam 是游標的 x 座標是低序字,而游標的 Y 座標則是高序字。- WM_RBUTTONDOWN
- 0x0204
使用者已將游標放在子視窗上方,然後按下滑鼠右鍵。
HIWORD(wParam) 未定義。
lParam 是游標的 x 座標是低序字,而游標的 Y 座標則是高序字。- WM_XBUTTONDOWN
- 0x020B
使用者已將游標放在子視窗上方,並已按下第一個或第二個 X 按鈕。
HIWORD(wParam) 表示按下了哪個按鈕。 此參數可以是下列其中一個值:XBUTTON1或XBUTTON2。
lParam 是游標的 x 座標是低序字,而游標的 Y 座標則是高序字。- WM_POINTERDOWN
- 0x0246
指標已與子視窗接觸。
HIWORD(wParam) 包含產生 WM_POINTERDOWN 事件的指標標識符。 -
lParam
-
包含指標的點位置。
注意
由於指標可能會透過非簡單區域與裝置接觸,因此這個點位置可能會簡化更複雜的指標區域。 盡可能使用完整的指標區域資訊,而不是點位置。
使用下列宏來擷取點的實體螢幕座標。
傳回值
如果應用程式處理此訊息,則會傳回零。
如果應用程式未處理此訊息,它會呼叫DefWindowProc。
備註
此訊息也會傳送至子視窗的所有上階視窗,包括最上層視窗。
除了具有 延伸視窗樣式WS_EX_NOPARENTNOTIFY 的所有子視窗,請將此訊息傳送至其父視窗。 根據預設,對話框中的子視窗具有WS_EX_NOPARENTNOTIFY樣式,除非呼叫 CreateWindowEx 函式來建立沒有此樣子視窗。
此通知提供子視窗的上階視窗,有機會檢查指標資訊,並視需要使用指標擷取函式來擷取指標。
需求
需求 | 值 |
---|---|
最低支援的用戶端 |
Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2012 [僅限傳統型應用程式] |
頁首 |
|