EasySize使用笔记(对话框中的控件随着对话框大小的变化进行自动调整)

本文记录了如何使用EasySize库,使得对话框中的控件能随着对话框大小的变化自动调整布局,适用于2010年及以后的版本。通过设置border和class属性,可以实现灵活的控件布局和适配。
摘要由CSDN通过智能技术生成
2010-05-12 14:12

要让对话框中的控件随着对话框大小的变化进行自动调整,是一件很头疼的事情,需要在WM_SIZE的响应函数中对所有的控件用MoveWindow()或者SetWindowPos()设置其变化比例,极其繁琐。EasySize是一个很好解决方案,用一些宏封装了内部的实现机制,使用起来方便快捷。原文地址:http://www.codeproject.com/KB/dialog/easysize.aspx

 

使用方法如下:

1.首先将EasySize.h拷贝到工程文件夹中,然后在stdafx.h中包含该头文件:
#include "EasySize.h"

 

2.在对话框类声明中添加DECLARE_EASYSIZE宏:
class CEasySizeDemoDlg : public CDialog
{
DECLARE_EASYSIZE
...

 

3.在OnInitDialog()函数中添加INIT_EASYSIZE宏(注意有分号):
BOOL CEasySizeDemoDlg::OnInitDialog()
{
    CDialog::OnInitDialog();
...   
    INIT_EASYSIZE;
    return TRUE; // return TRUE unless you set the focus to a control
}

 

4.响应WM_SIZE消息,在响应函数中添加UPDATE_EASYSIZE宏(注意有分号):
void CEasySizeDemoDlg::OnSize(UINT nType, int cx, int cy)
{
    CDialog::OnSize(nType, cx, cy);
    UPDATE_EASYSIZE;
}

 

5.如果需要限制对话框有一个最小尺寸,首先在资源

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值