怎样做透明视图窗口,该如何处理

怎样做透明视图窗口
基于MFC的视图类窗口怎样做成透明背景,就是说客户区背景是透明的。
我要的是视图类窗口,不是对话框窗口,是整个客户窗口透明,不是某个控件。
------解决方案--------------------
透明还是半透明要表达清楚,透明是很简单的,半透明才难
------解决方案--------------------
引用:
透明的,半透明也知道怎么搞


你知道透明的概念吗?
透明就是没有
也就是用
CRgn挖个洞就可以
你确定半透明用这方式能行?
------解决方案--------------------
layered window半透明只能用于主窗口,比如你希望只有视图半透明,主窗口标题啦菜单啦都不透明,那么普通方法是无法实现的,因为视图窗口其实是主窗口的一个子窗。只有变通的方法可以实现类似效果,比如设置视图类主窗口的透明度为1(肉眼看不见但是可以接受鼠标/键盘的操作控制)然后设置一个和主窗口一样大小的显示Layered窗口重叠放在主窗口下方,通过创建一幅32为bitmap作为中间桥梁,通过bitblt复制肉眼看不见的窗口上所有显示然后处理其中透明部分的alpha值再通过UpdateLayeredWindow显示到显示窗口中。如果想简单就设置定时器定时更新显示窗口的图片,如果不怕麻烦则截获肉眼不可见窗口的各种更新事件然后在窗口发生变化时再更新显示窗口。