CWnd::MoveWindow

CWnd::MoveWindow

變更位置和維度。

void MoveWindow( 
   int x, 
   int y, 
   int nWidth, 
   int nHeight, 
   BOOL bRepaint = TRUE  
); 
void MoveWindow( 
   LPCRECT lpRect,
   BOOL bRepaint = TRUE  
);
參數
x

指定 CWnd左邊的新位置。

y

指定 CWnd頂端的新位置。

nWidth

指定 CWnd的新寬度。

nHeight

指定 CWnd的新高度。

bRepaint

指定 CWnd 是否要重新繪製。 如果 , CWnd 照常接收在其 OnPaint 訊息處理常式的 WM_PAINT 訊息。 如果此參數為, 繪製任何類型都不會發生。 這適用於工作區,至非工作區 (包括標題和捲軸)。由於 CWnd 的移動所發現之父視窗的任何部分。 當這個參數為 時,應用程式必須明確失效或重繪必須重繪 CWnd 和父視窗的所有組件。

lpRect

指定新的大小和位置的 CRect 物件或 的長度 結構。

備註

對於最上層的物件, CWndx 和 y 參數是相對於螢幕的左上角。 如需 CWnd 子物件,則是相對於父視窗的工作區的左上角。

MoveWindow 函式會傳送 WM_GETMINMAXINFO 資訊。 處理這個訊息會提供 CWnd 機會修改最大和最小的可能視窗的預設值。 如果為MoveWindow 成員函式的參數超過這些值,這個值可由最小或最大值取代在 WM_GETMINMAXINFO 處理常式。

範例

CWnd::ClientToScreen。請參閱範例。

// resize dialog to client's size 
void CMyDlg::OnSizeToClient()
{
   CRect myRect;
   GetClientRect(&myRect);

   ClientToScreen(myRect);
   MoveWindow(myRect.left, myRect.top,
      myRect.Width(), myRect.Height());
}

需求

Header: afxwin.h

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章