首页 > Windows开发 > 详细

win32自绘按钮,使用GDI+(二)

时间:2015-12-12 10:51:26      阅读:367      评论:0      收藏:0      [点我收藏+]

解决上一篇的两个问题。

一,按钮背景透明

方法是,在绘制按钮之前,向按钮的父窗口发生WM_CTLCOLORBTN消息。该消息返回一个画刷句柄,系统使用该画刷句柄画出按钮的背景。所以我们在处理这个消息的时候,为系统返回一个空的画刷句柄就可以了。

直接在回调函数中添加代码

1    case WM_CTLCOLORBTN:
2         {
3             HBRUSH hBrush;
4             //hBrush = CreateSolidBrush(RGB(255, 0, 0));
5             hBrush=(HBRUSH)GetStockObject(NULL_BRUSH);
6             return (long)hBrush;
7         }

去掉FillRec函数,仍然可以实现下图效果:

技术分享

 二,设置系统菜单栏为渐变色

响应WM_NCPAINT。该消息在窗口框架被绘制时被送去窗口。

这个还没尝试,我还是先一条路走到黑,继续用去掉标题栏,重绘这个思路。

WM_NCPAINT参考https://msdn.microsoft.com/ZH-CN/library/windows/desktop/dd145212(v=vs.85).aspx

win32自绘按钮,使用GDI+(二)

原文:http://www.cnblogs.com/lanf/p/5040672.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!