现在的位置: 首页 > 综合 > 正文

窗口大小控制MINMAXINFO

2013年10月09日 ⁄ 综合 ⁄ 共 744字 ⁄ 字号 评论关闭

为了控制窗口的大小,在窗口初始化时,需要用到MINMAXINFO结构体。

结构体:
typedef struct {
 POINT ptReserved;
 POINT ptMaxSize;
 POINT ptMaxPosition;
 POINT ptMinTrackSize;
 POINT ptMaxTrackSize;
} MINMAXINFO;

参数说明:
 ptMaxSize:  设置窗口最大化时的宽度、高度
 ptMaxPosition: 设置窗口最大化时x坐标、y坐标
 ptMinTrackSize: 设置窗口最小宽度、高度
 ptMaxTrackSize:设置窗口最大宽度、高度

实例:
1、在窗口类映射ON_WM_GETMINMAXINFO消息;
2、在该函数修改MINMAXINFO结构体数据:

void CTestDlg::OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI) 
{
 lpMMI->ptMaxSize.x = 800;  // 设置窗口最大化时的宽度
 lpMMI->ptMaxSize.y = 600;  // 设置窗口最大化时的高度
 lpMMI->ptMaxPosition.x = 100; // 设置窗口最大化时x坐标
 lpMMI->ptMaxPosition.y = 100; // 设置窗口最大化时y坐标
 lpMMI->ptMinTrackSize.x = 400; // 设置窗口最小宽度
 lpMMI->ptMinTrackSize.y = 400; // 设置窗口最小高度
 lpMMI->ptMaxTrackSize.x = 600; // 设置窗口最大宽度
 lpMMI->ptMaxTrackSize.y = 500; // 设置窗口最大高度
 CDialog::OnGetMinMaxInfo(lpMMI);
}

抱歉!评论已关闭.