我做了一个OCX控件,是显示一个透明图片,在插入到WORD之后,当有焦点时可以正常显示透明图片,当时去焦点时,透明是透明了,图片没了!
我DEBUG一下发现当有焦点时候,ONDRAW函数调用一次,传入的CDC是一个CPaintDC类型的,就是相当于调用了ONPAINT,这时候可以显示这个透明图片。当失去焦点时,调用两次ONDRAW,传入不同的CDC指针,个人猜测是控件父窗口的CDC!这时候就不能显示图片了!
当在ONDRAW里绘画使用TransparentBlt函数绘画透明图片就会出现上述情况!使用BITBIT函数绘画非透明图片时,就能正常显示!