封装了一个方法,可以控制每一个控件跟随窗体变动的方式
#define MFC_UI_W 1 //宽度需要大小变化
#define MFC_UI_H 2 //高度需要大小变化
#define MFC_UI_WH MFC_UI_W|MFC_UI_H //此时控件大小会随窗体大小变化,但是位置不会有变动
#define MFC_UI_X 4 //X位置需要偏移
#define MFC_UI_Y 8 //Y位置需要偏移
#define MFC_UI_XY MFC_UI_X|MFC_UI_Y //此时控件位置会随窗体大小改动,但是控件大小不会变
#define MFC_UI_ALL MFC_UI_WH|MFC_UI_XY //此时控件会随窗体大小发生位置与大小的变化,相当于放大了
具体使用:
//mfc_wnd为窗体变化类的封装,这里初始化将当期dlg设置进去,单独写成类方便多个dlg的调用
mfc_wnd.SetWnd(this);
//这里的按钮控件就设置为左上X坐标跟随窗体大小变动,宽度跟随变动,效果上看起来就不会太差
mfc_wnd.PushUIpercent(IDC_BUTTON_SELLCODE, MFC_UI_X| MFC_UI_W);
mfc_wnd.PushUIpercent(IDC_BUTTON_STRDEAL, MFC_UI_X | MFC_UI_W);
mfc_wnd.PushUIpercent(IDC_BUTTON_FILEENDE, MFC_UI_X | MFC_UI_W);
mfc_wnd.PushUIpercent(IDC_BUTTON_PRODEAL, MFC_UI_X | MFC_UI_W);
mfc_wnd.PushUIpercent(IDC_BUTTON_CODETOOL, MFC_UI_X | MFC_UI_W);
//IDC_GROUP为一个容器,需要跟随窗体整体放大,设置为AL