控件随窗体移动
用mfc写了一个小程序,每次全屏的时候这些控件并不随窗体一起变化,老是在最左边,如何调整使之能随窗体大小一起变化
[解决办法]
SetwindowPos
重新设置位置
[解决办法]
MoveWindow( HWND hWnd, int X, int Y, int nWidth, int nHeight, BOOL bRepaint );
[解决办法]
int width; // 控件宽度
int height; //控件高度
HWND hWnd; // 窗体句柄 (这三个参数已经知道的)
//添加WM_SIZE消息响应函数,在其中添加:int cxClient; // 窗体宽度int cyClient; // 窗体高度HWND hwndContol; // 控件句柄cxClient = LOWORD(lParam);cyClient = HIWORD(lParam);hwndControl = GetDlgItem(hWnd, IDC_EDIT/*你的控件ID*);MoveWindow(hWnd, (cxClient - width) /2 , (cyClient - height) / 2, width, height, TRUE);
[解决办法]
在WM_SIZE中获取到 窗口大小后, 发送自定义消息,在自定义消息中将要调整的所有控件使用SetwindowPos 或者 MoveWindow 进行调整 即可。