WINDOWPOS 結構 (winuser.h)

包含視窗大小和位置的相關信息。

語法

typedef struct tagWINDOWPOS {
  HWND hwnd;
  HWND hwndInsertAfter;
  int  x;
  int  y;
  int  cx;
  int  cy;
  UINT flags;
} WINDOWPOS, *LPWINDOWPOS, *PWINDOWPOS;

成員

hwnd

類型: HWND

視窗的句柄。

hwndInsertAfter

類型: HWND

以 Z 順序排列的視窗位置 (前對後位置) 。 這個成員可以是放置此視窗後方視窗的句柄,也可以是 SetWindowPos 函式所列的特殊值之一。

x

類型: int

視窗左邊緣的位置。

y

類型: int

視窗上邊緣的位置。

cx

類型: int

窗口寬度,以像素為單位。

cy

類型: int

視窗高度,以像素為單位。

flags

類型: UINT

視窗位置。 這個成員可以是下列一或多個值。

意義
SWP_DRAWFRAME
0x0020
在視窗的類別描述中,繪製視窗周圍) 定義的框架 (。 與 SWP_FRAMECHANGED 旗標相同。
SWP_FRAMECHANGED
0x0020
WM_NCCALCSIZE 訊息傳送至視窗,即使視窗的大小未變更也一樣。 如果未指定此旗標, 則只有在 視窗的大小變更時,才會傳送WM_NCCALCSIZE。
SWP_HIDEWINDOW
0x0080
隱藏視窗。
SWP_NOACTIVATE
0x0010
不會啟動視窗。 如果未設定此旗標,則會啟動視窗,並移至最上層或最上層群組的頂端, (視 hwndInsertAfter 成員的設定而定) 。
SWP_NOCOPYBITS
0x0100
捨棄工作區的整個內容。 如果未指定此旗標,則會儲存工作區的有效內容,並在視窗重設大小或重新定位之後複製到工作區。
SWP_NOMOVE
0x0002
保留目前的位置, (忽略 xy 成員) 。
SWP_ NOOWNERZORDER
0x0200
不會變更擁有者視窗在 Z 順序中的位置。
SWP_NOREDRAW
0x0008
不會重新繪製變更。 如果設定此旗標,則不會發生任何種類的重新繪製。 這適用於工作區、非客戶端區域 (包括標題列和滾動條) ,以及因視窗移動而發現父視窗的任何部分。 設定此旗標時,應用程式必須明確失效或重新繪製需要重新繪製之視窗和父視窗的任何部分。
SWP_NOREPOSITION
0x0200
不會變更擁有者視窗在 Z 順序中的位置。 與 SWP_NOOWNERZORDER 旗標相同。
SWP_NOSENDCHANGING
0x0400
防止視窗接收 WM_WINDOWPOSCHANGING 訊息。
SWP_NOSIZE
0x0001
保留目前的大小 (忽略 cxcy 成員) 。
SWP_NOZORDER
0x0004
保留目前的 Z 順序 (忽略 hwndInsertAfter 成員) 。
SWP_SHOWWINDOW
0x0040
顯示 視窗。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
標頭 winuser.h (包括 Windows.h)

另請參閱

概念

EndDeferWindowPos

參考

SetWindowPos

WM_NCCALCSIZE

Windows