首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

怎么截取LAYERED窗体后面的图像

2012-08-25 
如何截取LAYERED窗体后面的图像有一个窗体A,指定了WS_EX_LAYERED风格,通过BitBlt + SRCCOPY 可以截取该窗

如何截取LAYERED窗体后面的图像
有一个窗体A,指定了WS_EX_LAYERED风格,
通过
BitBlt + SRCCOPY 可以截取该窗口后面的图像,但是不能截取到该窗口后面的半透明的窗口

网上找了很多资料,通过
BitBlt + SRCCOPY | CAPTUREBLT可以截获半透明窗体

为了截获窗体后面的图像并包含半透明窗体,我想了两个办法
方法一: 我把窗体A透明,再通过BitBlt + SRCCOPY | CAPTUREBLT截取,截取完再设成不透明
方法二: 我把窗体A移走,再通过BitBlt + SRCCOPY | CAPTUREBLT截取,截取完再移回来

但是这两个方法都会闪的很厉害,
请问还有没有别的方法能够取得窗体后面的图像并包含半透明窗体

备注:上面说的半透明窗体就是指定了WS_EX_LAYERED风格的窗体

[解决办法]
如果要获得后面的LAYERED窗口的图像,只能是把当前窗口隐藏或者移开,闪烁是无法避免的。

热点排行