共用方式為


WM_NCXBUTTONDBLCLK訊息

當使用者按兩下第一個或第二個 X 按鈕時,游標位於視窗的非工作區時張貼。 此訊息會張貼至包含游標的視窗。 如果視窗已擷取滑鼠,則不會張貼此訊息。

視窗會透過其 WindowProc 函式接收此訊息。

#define WM_NCXBUTTONDBLCLK              0x00AD

參數

wParam

低序字組會指定DefWindowProc函式從處理WM_NCHITTEST訊息所傳回的點擊測試值。 如需點擊測試值的清單,請參閱 WM_NCHITTEST

高序字表示按兩下哪個按鈕。 它可以是下列值之一。

意義
XBUTTON1
0x0001
第一個 X 按鈕已按兩下。
XBUTTON2
0x0002
按兩下第二個 X 按鈕。

lParam

POINT 結構的指標,其中包含游標的 x 和 Y 座標。 座標相對於畫面左上角。

傳回值

如果應用程式處理此訊息,它應該會傳回 TRUE。 如需處理傳回值的詳細資訊,請參閱一節。

備註

使用下列程式代碼來取得 wParam 參數中的資訊。

nHittest = GET_NCHITTEST_WPARAM(wParam); 
fwButton = GET_XBUTTON_WPARAM(wParam); 

您也可以使用下列程式代碼,從 lParam 取得 x 和 y 座標:

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

重要

請勿使用 LOWORD 或 HIWORD 宏來擷取游標位置的 x 和 y 座標,因為這些宏會在具有多個監視器的系統上傳回不正確的結果。 具有多個監視器的系統可以有負 x 和 Y 座標,而 LOWORD 和 HIWORD 會將座標視為未帶正負號的數量。

根據預設, DefWindowProc 函式會測試指定的點以取得游標的位置,並執行適當的動作。 如果適用,它會將 WM_SYSCOMMAND 訊息傳送至視窗。

視窗不需要有 CS_DBLCLKS 樣式,才能接收 WM_NCXBUTTONDBLCLK 訊息。 當使用者按下、放開及再次按下系統按兩下時間限制內的 X 按鈕時,系統會產生 WM_NCXBUTTONDBLCLK 訊息。 按兩下其中一個按鈕實際上會產生四個訊息:WM_NCXBUTTONDOWNWM_NCXBUTTONUPWM_NCXBUTTONDBLCLK,然後再次WM_NCXBUTTONUP。

不同於WM_NCLBUTTONDBLCLKWM_NCMBUTTONDBLCLKWM_NCRBUTTONDBLCLK訊息,如果應用程式處理此訊息,應用程式應該會從此訊息傳回 TRUE。 這麼做可讓在 Windows 2000 之前的 Windows 系統上模擬此訊息的軟體,以判斷視窗程式是否已處理訊息,或呼叫 DefWindowProc 來處理它。

需求

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

另請參閱

參考

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

WM_NCHITTEST

WM_NCXBUTTONDOWN

WM_NCXBUTTONUP

WM_SYSCOMMAND

概念

滑鼠輸入

其他資源

MAKEPOINTS