mfc如何使按钮变得透明,但是还是能点击触发(VS2019)(如果可以尽量不要外加文件)
(1)把原来的CMyButton 类删除,添加下面两个文件(代码太长,放在网盘中了):
链接: https://pan.baidu.com/s/1J0N1aRCUS7ESiSFhhQu7UA 提取码: a1zq
(2)在界面中添加一个按钮,点击右键,选择“添加变量”,把变量类型改为CButtonST
(3)双击按钮,给按钮添加一个点击事件响应函数
(4)做一个白色透明的bmp文件(在PPT中,画一个约按钮大小的矩形,设置矩形为无边框、白色填充,透明度调到100%,把矩形保存为bmp文件),然后再工程中添加资源,把这个bmp导入工程。
(5)在OnInitDialog函数中添加如下代码:
m_btnTest.SetBitmaps(IDB_BITMAP1, RGB(255, 255, 255)); //m_btnTest 是在步骤(2)中添加的CButtonST类型的变量
m_btnTest.DrawTransparent();
(6)清理工程,重新编译运行即可
运行效果图(我给窗口加了个背景图)
鼠标移动到按钮上后的效果: