用双缓冲画图时建立的画布有背景色,如何将背景色透明

阿佳夕 2012-11-30 10:14:00
用双缓冲画图时建立的画布有背景色,如何将背景色透明。
对话框有个背景色,双缓冲画布也有背景色,用来重绘的图片PNG格式,有部分透明。
如何把画图和对话框的背景色透明,以至图片显示时透明部分显示的是桌面或者其他窗口图
...全文
314 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿佳夕 2012-12-03
  • 打赏
  • 举报
回复
我需要的是一个圆角矩形,多方查阅后发现MFC里面用CreateRoundRectRgn函数能直接生成圆角矩形,用不着透明。问题解决了。
BlackGhost 2012-12-01
  • 打赏
  • 举报
回复
想透明 就得分层窗口
阿佳夕 2012-11-30
  • 打赏
  • 举报
回复
引用 5 楼 Binzo 的回复:
以前玩C#试过,插入图片做背景,有相应的函数设置成透明。 自己实现的话,觉得原理上还是要取桌面图片与背景图片进行alpha混合操作。
我要的是具体的处理方法...
阿佳夕 2012-11-30
  • 打赏
  • 举报
回复
用的是GDI绘图,所有绘图都是在OnPaint函数里进行的,将pDC->SetBKMode()设置透明是没有效果的..
Binzo 2012-11-30
  • 打赏
  • 举报
回复
以前玩C#试过,插入图片做背景,有相应的函数设置成透明。 自己实现的话,觉得原理上还是要取桌面图片与背景图片进行alpha混合操作。
阿佳夕 2012-11-30
  • 打赏
  • 举报
回复
引用 2 楼 zhao4zhong1 的回复:
取桌面对应位置的图后再在其上绘制。
位置我能确定,就是如何生成带有对应位置图像的CBitmap
阿佳夕 2012-11-30
  • 打赏
  • 举报
回复
引用 2 楼 zhao4zhong1 的回复:
取桌面对应位置的图后再在其上绘制。
请问如何取桌面对应位置?
赵4老师 2012-11-30
  • 打赏
  • 举报
回复
取桌面对应位置的图后再在其上绘制。

64,651

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧