MFC自定义按钮背景
MFC默认的按钮是矩形显示,但是在实际项目开发过程中我们需要降一张椭圆形的图片贴到按钮上面,但是我们直接将图片放到按钮上,按钮的四个角就会显示黑色,这样一来就与主界面的背景有明显的对比,达不到满意的效果。大致如下图所示
如果我们将四个角进行透明化,我们就需要自定义按钮类来实现这一功能。如果对按钮在不同的状态下显示不一样的图片,我们就需要重写基类的虚函数,继承的函数如下所示:
经过重写函数,我们就可以达到我们想要的结果,如下图所示:
从上图可以看出,按钮的四个角已透明化,并且显示主界面内的背景。主要利用了MFC的GDI来显示这种效果,并且利用位图显示函数StretchBlt()和BitBlt()函数。