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

包含指標的點位置。

注意

由於指標可能會透過非簡單區域與裝置接觸,因此這個點位置可能會簡化更複雜的指標區域。 盡可能使用完整的指標區域資訊,而不是點位置。

使用下列宏來擷取點的實體螢幕座標。

  • GET_X_LPARAM(lParam):x(水平點)座標。
  • GET_Y_LPARAM(lParam): y (垂直點) 座標。

傳回值

如果應用程式處理此訊息,則會傳回零。

如果應用程式未處理此訊息,它會呼叫DefWindowProc

備註

此訊息也會傳送至子視窗的所有上階視窗,包括最上層視窗。

除了具有 延伸視窗樣式WS_EX_NOPARENTNOTIFY 的所有子視窗,請將此訊息傳送至其父視窗。 根據預設,對話框中的子視窗具有WS_EX_NOPARENTNOTIFY樣式,除非呼叫 CreateWindowEx 函式來建立沒有此樣子視窗。

此通知提供子視窗的上階視窗,有機會檢查指標資訊,並視需要使用指標擷取函式來擷取指標。

需求

需求
最低支援的用戶端
Windows 8 [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2012 [僅限傳統型應用程式]
頁首
Winuser.h (包括 Windows.h)

另請參閱

訊息

CreateWindow

CreateWindowEx

HIWORD

LOWORD

WM_CREATE

WM_DESTROY

WM_LBUTTONDOWN

WM_MBUTTONDOWN

WM_RBUTTONDOWN

WM_XBUTTONDOWN