TransparentBlt Picture3.hdc, 0, 0, Picture1.ScaleWidth, Picture1.ScaleHeight, _
Picture2.hdc, 0, 0, Picture2.ScaleWidth, Picture2.ScaleHeight, vbBlack '定义透明的颜色picture1 背景是白色,画一条黑色的线,picture2背景是黑色,用红色画同一条线。
当picture1和picture2可见时,运行后picture3上显示红色的线,去掉了picture2的背景。当picture2和picture1不可见时,函数运行失败。用paintpicture方法可以实现,但是太慢了。请问如何解决?听说用bitblt可以解决,但是我怎么也弄不出来?请帮忙。
Picture2.hdc, 0, 0, Picture2.ScaleWidth, Picture2.ScaleHeight, vbBlack '定义透明的颜色picture1 背景是白色,画一条黑色的线,picture2背景是黑色,用红色画同一条线。
当picture1和picture2可见时,运行后picture3上显示红色的线,去掉了picture2的背景。当picture2和picture1不可见时,函数运行失败。用paintpicture方法可以实现,但是太慢了。请问如何解决?听说用bitblt可以解决,但是我怎么也弄不出来?请帮忙。
取巧了,如果你只有P2,那么楼上的就很对,需要一堆操作,目的就是生成你的P1的内容。
至于你说不可见时出错那是因为你的P1,P2没有持久位图的原因,属性里设一下就可以了。
http://www.applevb.com/art/alphablend.txt