MFC-SetWindowPos-位图按钮-扩展对话框-更改Logo

1.对话弹出框位置

在主界面点击按钮,产生新的对话框,默认这个对话框是在主界面中间,要对弹出位置进行调整,在OnInitDialog()中调用SetWindowPos函数,原型为:

BOOL SetWindowPos(HWND hWnd, const CWnd* pWndInsertAfter, int x, int y,int cx, int cy, UINT nFlags),最后一个参数不能取SWP_NOMOVE(这个参数将会会忽略x,y),x,y设定对话框弹出位置(坐标为相对于屏幕左上角),若要设置相对于主菜单的位置,可采用如下代码:

CWnd* pWnd = AfxGetMainWnd();//获得主对话框句柄
pWnd->GetWindowRect(rectMain);//recMain为CRect类型变量,读取主对话框位置位置
SetWindowPos(NULL,rectMain.left,rectMain.top+30,rectsmall.Width(),rectsmall.Height(),SWP_NOZORDER);//在主对话框坐标基础上加减坐标即可

movewindow函数也可以实现这个功能,二者区别如下链接:

http://blog.csdn.net/happymawolf/article/details/6757928


2.扩展对话框,参考孙鑫的VC++深入详解第七章P248


3.设置按钮位图

3.1调整按钮Owner Draw属性为TRUE

3.2导入按钮位图

3.3为按钮添加CBitmap

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值