CWnd::MoveWindow
void MoveWindow( int x, int y, int nWidth, int nHeight, BOOL bRepaint = TRUE );
void MoveWindow( LPCRECT lpRect, BOOL bRepaint = TRUE );
函數功能:該函數改變指定窗口的位置和尺寸。對於頂層窗口,位置和尺寸是相對於屏幕的左上角的:對於子窗口,位置和尺寸是相對於父窗口客戶區的左上角坐標的。
函數原型:BOOL MoveWindow(int x.int y,int nWidth,int nHeight,BOOL BRePaint);
參數:
x:指定窗口的新位置的左邊界。
Y:指定窗口的新位置的頂部邊界。
nWidth:指定窗口的新的寬度。
nHaight:指定窗口的新的高度。
在MFC中只需參數x,y,nWidth,nHeight;
bRepaint:確定窗口是否被刷新。如果該參數為TRUE,窗口接收一個WM_PAINT消息;如果參數為FALSE,不發生任何刷新動作。它適用於客戶區,非客戶區(包括標題欄和滾動條),及由於移動子窗口而露出的父窗口的區域。如果參數為FALSE,應用程序就必須明確地使窗口無效或重畫該窗口和需要刷新的父窗口。
返回值:如果函數成功,返回值為非零;如果函數失敗,返回值為零。若想獲得更多錯誤信息,請調用GetLastError函數。
備注:如果bRepaint為TRUE,系統在窗口移動后立即給窗口過程發送WM_PAINT消息(即由MoveWindow函數調用UPdateWindow函數)。如果bRepaint 為FALSE,系統將WM_PAINT消息放在該窗口的消息隊列中。消息循環只有在派遣完消息隊列中的其他消息時才派遣WM_PAINT消息。
MoveWindow給窗口發送WM_WINDOWPOSCHANGING,WM_WINDOWPOSCHANGED,WM_MOVE,WM_SIZE和WM_NCCALCSIZE消息,
