问题解决——限制窗体的最小尺寸

Posted llguanli

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了问题解决——限制窗体的最小尺寸相关的知识,希望对你有一定的参考价值。

曾经都是用对话框做东西,这次用的SDI。

突然想限制窗体的最小尺寸,避免缩成一团,就非常任意的先百度了一下。

网上好多方法,有在OnSize里面SetWindowPos或者MoveWindow的,也有在OnSizing里面用这两个函数的。

显然这都不是好办法,会刷屏乱闪。


正确而又优雅的做法非常easy,处理框架窗体的WM_GETMINMAXINFO消息就可以。

比如

void CMainFrame::OnGetMinMaxInfo(MINMAXINFO* lpMMI)
{
	// TODO: 在此加入消息处理程序代码和/或调用默认值
	if (lpMMI->ptMinTrackSize.x<=951)
	{
		lpMMI->ptMinTrackSize.x=951;
	}

	if (lpMMI->ptMinTrackSize.y<=681)
	{
		lpMMI->ptMinTrackSize.y=681;
	}

	CFrameWndEx::OnGetMinMaxInfo(lpMMI);
}
仅仅要指定了值。剩下的事情,MFC会给你做好,就是这么简单。


以上是关于问题解决——限制窗体的最小尺寸的主要内容,如果未能解决你的问题,请参考以下文章

php 根据当前注册的图像尺寸(Wordpress),根据最小高度自动限制最小上传尺寸

最小的条码尺寸?

qt界面显示内容相同

在VB6.0中,运行一个窗体时,放大该窗体的尺寸时将触发的事件是

WinForm form属性

C#实现无标题栏窗体点击任务栏图标正常最小化或还原的解决方法