专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > C++ Builder

请妖哥回回答,Spy4Win目标窗口的红色边框怎样绘制和消除

发布时间:2011-06-28 10:19:03 文章来源:www.iduyao.cn 采编人员:星星草
请妖哥来回答,Spy4Win目标窗口的红色边框怎样绘制和消除
一直使用这个软件N年了,一个项目需要和它类似的功能,就是获得鼠标下面窗口的句柄,整体上还是有思路的,就是在绘制红色边框上不清楚该怎么做。



如图,获得窗口矩形以后,是用什么GDI函数绘制呢,FrameRect()还是BitBlt()呢。
鼠标离开这个窗口时,需要恢复红色边框覆盖的像素,怎样恢复呢?还有怎样知道鼠标已经离开了这个窗口呢?
------解决思路----------------------
getwindowfrompoint获得句柄,然后获得控件区域,通过gdi话边框,保存区域和句柄。
当鼠标移动时重新获取句柄判断是否原来的句柄,如果不是想用异或的方式重新画上边框,原来的边框就没了。
然后又重新获取区域,开始新的处理。。。。
一直重复。
------解决思路----------------------
Spy4Win 的工作原理:当鼠标按下后,有个MouseDown的标志设为True,然后在鼠标移动过程中(OnMouseMove)不停的获取鼠标下窗口句柄并且用Canvas->Rectangle绘制边框(画笔模式是pmNotXor),还要和上一个窗口句柄作比较,如果和上一个窗口不同,那么还要获取到上一个窗口的矩形并绘制边框(再次绘制就擦除了上一次的绘制)
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: