zoukankan      html  css  js  c++  java
  • 问题解决——限制窗体的最小尺寸

    曾经都是用对话框做东西,这次用的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会给你做好,就是这么简单。


  • 相关阅读:
    TP自适应
    消息编解码Nanopb
    协程coroutine
    gui设计
    常用小工具集
    在github上新建一个仓库并上传本地工程
    通用定时器设计(2)
    通用定时器设计(1)
    嵌入式驱动程序设计
    meta标签的理解
  • 原文地址:https://www.cnblogs.com/llguanli/p/7019273.html
Copyright © 2011-2022 走看看