MFC初始化时调整对话框窗口大小和位置

直接上代码,写在BOOL CXXXDlg::OnInitDialog():

//author:autumoon
//日期:2022-10-31 
	int nDstWidth = 1280;
	int nDstHeight = 900;

	//得到显示器大小
	int cx = GetSystemMetrics(SM_CXSCREEN);
	int cy = GetSystemMetrics(SM_CYSCREEN);

	//再用MoveWindow
	CRect rcTemp;
	rcTemp.TopLeft() = CPoint(cx / 2 - nDstWidth / 2, cy / 2 - nDstHeight / 2);
	rcTemp.BottomRight() = CPoint(cx / 2 + nDstWidth / 2, cy / 2 + nDstHeight / 2);
	MoveWindow(&rcTemp);

效果,窗口以指定的大小和位置居中,同时触发OnSize():

如果包含控件缩放的话,控件同时也会自动缩放:

MFC初始化时调整对话框窗口大小和位置_第1张图片

欢迎交流与讨论,有问题请私信联系。

你可能感兴趣的:(c++,MFC,mfc,c++,开发语言)