屏幕上某点被改变有相应的事件吗?

ckc 2010-08-02 01:58:22
一直用GetPixel来不停的取某点像素值,发现这样效率太低。
有没有办法可以直接监控这个事情,发生改变之后我再去读像素。
...全文
93 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ckc 2010-08-02
  • 打赏
  • 举报
回复
我就是需要实时监控,需要监控的点并不多(少于10个点)
所以不用GetPixel换别的方法估计意义不大
看样子是没什么相应的事件了?

jameshooo的思路有点象我希望的,可是监控的窗口是另外的进程,实际上我是需要监控别的进程重绘了之后做点什么,并不是自己的窗口被别人挡住了之后做点什么。
zwfgdlc 2010-08-02
  • 打赏
  • 举报
回复
WM_PAINT时再用GetPixel()行不行。
迷途的书童 2010-08-02
  • 打赏
  • 举报
回复
整个定时起器, 每过一秒去取一下该点的像素值. 和当前比较, 如果不通,就说明改变@
iamshuke 2010-08-02
  • 打赏
  • 举报
回复
用GetDIBits得到数据,不要用GetPixel。
jameshooo 2010-08-02
  • 打赏
  • 举报
回复
不停用GetUpdateRect探测窗口是否需要重绘(但像素不一定会改变)
sunlin7 2010-08-02
  • 打赏
  • 举报
回复
没有什么好的办法。除非可以监控对屏幕缓冲区的写操作。
黑泡泡选手 2010-08-02
  • 打赏
  • 举报
回复
解决方案是什么?实时监控?1楼的方法还可以!
wwgddx 2010-08-02
  • 打赏
  • 举报
回复
好像没有这样的消息,可能直接操作显卡能实现你的要求。

GetPixel效率肯定低, 你可以把屏幕这个点的像素数据与实时的数据进行异或位运算,如果为0就没变

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧