VC实现透明背景和半透明图片

简介: 1.如何将对话框客户区的背景设成透明的? crybird (寒号鸟) http://expert.csdn.net/Expert/topic/2172/2172079.xml 描述:如题。
1.如何将对话框客户区的背景设成透明的?
crybird (寒号鸟)
http://expert.csdn.net/Expert/topic/2172/2172079.xml
描述:如题。客户区的背景能设成透明的么?如果有时间,非客户区的隐藏也讲讲啦!

回复人: bcpl(我是宇宙中的一粒沙子)
BOOL CALLBACK EnumChildFunc(HWND hwnd, LPARAM lParam)
{
CRgn *pRgn = (CRgn*)lParam;
CRect rcChild;
::GetWindowRect(hwnd, rcChild);
CRgn rgnChild;
CRgn rgnCopy;
rgnCopy.CreateRectRgn(0, 0, 1, 1);
rgnCopy.CopyRgn(pRgn);
rgnChild.CreateRectRgn(rcChild.left, rcChild.top, rcChild.right, rcChild.bottom);
pRgn->CombineRgn(&rgnCopy, &rgnChild, RGN_OR);
return TRUE;
}

int SetBackTransparent(CWnd *pWnd, BOOL bClientOnly = TRUE)
{
CRgn rgn;
if(bClientOnly)
{
CRgn rgnWindow, rgnClient;
CRect rcWindow, rcClient, rcRgn;
pWnd->GetWindowRect(rcWindow);
pWnd->GetClientRect(rcClient);
pWnd->ClientToScreen(rcClient);
rgnWindow.CreateRectRgn(rcWindow.left, rcWindow.top, rcWindow.right, rcWindow.bottom);
rgnClient.CreateRectRgn(rcClient.left, rcClient.top, rcClient.right, rcClient.bottom);
rgn.CreateRectRgn(0, 0, 1, 1);
rgn.CombineRgn(&rgnWindow, &rgnClient, RGN_DIFF);
}
else
{
rgn.CreateRectRgn(0, 0, 0, 0);
}
::EnumChildWindows(pWnd->GetSafeHwnd(), (WNDENUMPROC)EnumChildFunc,(LPARAM)&rgn);
return pWnd->SetWindowRgn(rgn, TRUE);
}
调用办法:
在CYourDialog::OnInitDialog里加上
SetBackTransparent(this);
如果要连非客户区都透明,用
SetBackTransparent(this, FALSE);
版主点评:
高手。

//---------------------------------------------------------------------------
http://expert.csdn.net/Expert/topic/2422/2422164.xml
主  题: 如何在一个背景图像上,做半透明的图?
作  者: DMC (DMC)

描述:
如何在一个背景图像上,做半透明的图。我想实现在一个地图上显示半透明的数据信息,类似天气预报中等压图的处理。如何才能实现这个背景图和最上层图的相互映射,完成半透明的效果?

回复人: Raxxxer(Jasmine Hellstorm)
你可以使用windows的一个api AlphaBlend,用法和BitBlt差不多:
BLENDFUNCTION bf;
bf.AlphaFormat=0;
bf.BlendFlags=0;
bf.BlendOp=AC_SRC_OVER;
bf.SourceConstantAlpha=100;//透明度0-255
AlphaBlend(hBackDC,0,70,73,20,hMaskDC,0,0,73,20,bf);
不可以在WindowsCE里用
#include <wingdi.h>
//还要在Project -- setting -- link 里连接上msimg32.lib

目录
相关文章
|
4月前
|
Python
wxPython StaticText控件背景色透明
wxPython StaticText控件背景色透明
35 0
|
7月前
[笔记]音视频学习之SDL篇《二》 绘制平铺的背景图并居中放置另一图片
[笔记]音视频学习之SDL篇《二》 绘制平铺的背景图并居中放置另一图片
|
5月前
qrc-标签和按钮、调色板加载图片
qrc-标签和按钮、调色板加载图片
24 0
Flutter实现圆形图片+描边
Flutter实现圆形图片+描边
121 0
|
iOS开发
iOS - 设置图片为背景色,且拉伸到指定大小
iOS - 设置图片为背景色,且拉伸到指定大小
264 0
平铺文理+拉伸按钮图片
平铺文理+拉伸按钮图片
53 0
VC中GDI+双缓冲实现Picture控件中显示png图片
VC中GDI+双缓冲实现Picture控件中显示png图片
169 0
|
数据可视化 iOS开发
iOS 为图片添加圆角和描边的几种方式
对于习惯使用Storyboard的人来说,设置圆角、描边是一件比较蛋疼的事,因为苹果没有在xcode的Interface Builder上直接提供修改控件的圆角,边框设置。我们来说说如何对某个控件进行圆角、描边处理:
725 0
|
Web App开发 C# Windows
WPF图片浏览器(显示大图、小图等)
原文:WPF图片浏览器(显示大图、小图等) 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wangshubo1989/article/details/46784601 1.概述                最近利用WPF做了一个图片浏览器,能够将文件夹中的所有图片以小图的形式显示,并将选中的图片以512*512大小显示。
2502 0