浏览器是真实的子窗口,绝非双窗口实现。浏览器运行正常,FLASH显示正常
CPU占用很低,GOOGLE页面在鼠标乱晃时的CPU不超过10%,百度页面占用20-30%,因为脚本中频繁使用定时器没打算藏着掖着,但啥时候公开原理要看我心情,还有跟帖数……嘿嘿
CPU占用很低,GOOGLE页面在鼠标乱晃时的CPU不超过10%,百度页面占用20-30%,因为脚本中频繁使用定时器没打算藏着掖着,但啥时候公开原理要看我心情,还有跟帖数……嘿嘿
不阻塞UI,你说的这个问题在我这里不存在。IE控件打开网页都是异步的,为什么会阻塞?
后面的半透明,是根据Alpha透明?是没有WM_PAINT的实现方式吗
浏览器控件是透明窗口真正的子窗口,并没有创建另一个不透明的顶级窗口作为浏览器的父窗口(双窗口模拟法)。
WM_PAINT方式在透明窗口下行不通。
有的人拼命想把浏览器控件透明化,有的人拼命想把浏览器控件不透明化,呵呵,众口难调啊。这是两个完全不同的概念。
想把浏览器透明化的人,是希望背景是缕空的,但网页元素是不透明的。这个基本上做不到,有的人想办法把窗口背景截下来作为body元素的背景图片,看起来是做到了,但窗口一移动或者背景发生了变化就露馅了,没法实时更新背景。
想把浏览器不透明化的人,是希望主窗口被创建成LAYERED半透明样式而作为子窗口的浏览器控件正常显示。因为LAYERED窗口的子窗口是显示不出来的,所以都想尽各种办法截获子窗口的内容。其它标准窗口还好说,偏偏这个浏览器窗口很难缠,它从来不发送任何WM_PAINT消息,也不处理任何绘制相关的消息,截图是很难办的,标准截图方式对它无效。最重要的是不知道它的显示内容什么时候会发生变化。所以产生了双窗口解决方案。
搂主讲到了性能,那应该是用自己Render的方式了。
==========================
这个是能做到di
IE控件加载一个gif,然后把背景镂空,就可以实现一个桌面精灵,类似瑞星的小狮子