WINDOWPLACEMENT 結構 (winuser.h)

包含有關視窗在畫面上放置的資訊。

語法

typedef struct tagWINDOWPLACEMENT {
  UINT  length;
  UINT  flags;
  UINT  showCmd;
  POINT ptMinPosition;
  POINT ptMaxPosition;
  RECT  rcNormalPosition;
  RECT  rcDevice;
} WINDOWPLACEMENT;

成員

length

類型: UINT

結構的長度,以位元組為單位。 呼叫 GetWindowPlacementSetWindowPlacement 函式之前,請將此成員設定為 sizeof(WINDOWPLACEMENT)

如果未正確設定此成員,GetWindowPlacementSetWindowPlacement會失敗。

flags

類型: UINT

旗標,控制最小化視窗的位置,以及還原視窗的方法。 這個成員可以是下列一或多個值。

意義
WPF_ASYNCWINDOWPLACEMENT
0x0004
如果呼叫執行緒和擁有視窗的執行緒會附加至不同的輸入佇列,則系統會將要求張貼至擁有視窗的執行緒。 這可防止呼叫執行緒封鎖其執行,而其他執行緒則處理要求。
WPF_RESTORETOMAXIMIZED
0x0002
不論還原的視窗在最小化之前是否已最大化,都會最大化。 此設定只有在下次還原視窗時才有效。 它不會變更預設還原行為。

只有在為showCmd成員指定SW_SHOWMINIMIZED值時,此旗標才有效。

WPF_SETMINPOSITION
0x0001
可以指定最小化視窗的座標。

如果 座標是在 ptMinPosition 成員中設定,就必須指定這個旗標。

showCmd

類型: UINT

視窗目前的顯示狀態。 它可以是可在 ShowWindow函式的 nCmdShow參數中指定的任何值。

ptMinPosition

類型: POINT

視窗最小化時,視窗左上角的座標。

ptMaxPosition

類型: POINT

視窗最大化時,視窗左上角的座標。

rcNormalPosition

類型: RECT

當視窗位於還原的位置時,視窗的座標。

rcDevice

備註

如果視窗是沒有WS_EX_TOOLWINDOW視窗樣式的最上層視窗,則下列成員所代表的座標位於工作區座標中:ptMinPosition、ptMaxPositionrcNormalPosition 否則,這些成員會以螢幕座標表示。

工作區座標與螢幕座標不同,因為它們會將應用程式工具列的位置和大小 (包括工作列) 納入考慮。 工作區座標 (0,0) 是工作區區域的左上角,應用程式工具列未使用的螢幕區域。

WINDOWPLACEMENT結構中使用的座標只能由GetWindowPlacement 和 SetWindowPlacement函式使用。 將工作區座標傳遞至預期螢幕座標 (的函式,例如 SetWindowPos) 會導致視窗出現在錯誤的位置。 例如,如果工作列位於畫面頂端,請使用 GetWindowPlacement 儲存視窗座標,並使用 SetWindowPos 還原它們會導致視窗在畫面上出現「擷取」。

規格需求

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

另請參閱

概念

GetWindowPlacement

矩形

參考

SetWindowPlacement

SetWindowPos

ShowWindow

Windows