2010-08-07上传过一个1.0版的,那个是在XP的SP2系统上测试的。
没有发现单种颜色全透明失效的问题。后来在XP的SP3上运行了一下,发现单种颜色全透明失效!
很惊讶啊!同为XP,相同的函数(SetLayeredWindowAttributes)居然表现出不同的效果!
于是决定稍微改动一下程序,从原来的双缓存改为三缓存(哈哈,没错,是三缓存)。
于是程序运行表现良好了(并且可以使某种颜色的全透明和全部像素以某个透明值显示同时起作用)。
(WIN7上还没测试)。
程序浏览图像用的是GDI+库。
程序默认打开时会播放内置的一个Gif动态图片,窗口形状根据图片动态调整。
你可以打开其他图片以改变窗口的异形形状。
程序界面是一个三无窗口:无任务栏、无标题栏、无边框。
为方便控制,程序具有托盘图标,且托盘图标随Gif图像动态改变。
程序异形窗口用的函数是SetLayeredWindowAttributes,把某种颜色设为全透明。
并且该透明颜色在程序中有两种方法进行设置:
1.打开通用颜色对话框,选择一种颜色;
2.在窗口上双击鼠标,双击处的颜色作为透明色;
附件中的“虫子.gif”图片可以打开试试~~虫子好像在屏幕上爬似的~~
程序附带浏览图片和截屏功能。
注意:保存gif图片只能保存单帧。本来想用Gdi+的SaveAdd方法保存多帧,却发现老是失败并返回Win32Error错误。
网上一搜发现原来Gdi+不支持Gif多帧的保存功能,只支持tiff的多帧保存,而且tiff多帧保存后也没有时间戳。
所以只得放弃。
左键可以拖动窗口移动。
程序只允许运行一个实例。注册了两个热键:Shift+F8和Shift+F9。
有问题联系:hastings1986@163.com
1