找回密码
 加入
搜索
查看: 5726|回复: 16

[AU3基础] [求思路]滚动某个程序的窗口

 火.. [复制链接]
发表于 2011-6-25 21:00:00 | 显示全部楼层 |阅读模式
因为想写au3的滚动截屏。

当处于某个窗口(如Firefox的窗口),如何让窗口的垂直滚动条向下滚动?---- 现在仅仅想到发送键盘按键。而关键一点就是如何判断已经滚动最底部了?
发表于 2011-6-25 21:08:55 | 显示全部楼层
经滚动最底部就会自己停止了,不会再下了
 楼主| 发表于 2011-6-25 21:11:41 | 显示全部楼层
经滚动最底部就会自己停止了,不会再下了
hzxymkb 发表于 2011-6-25 21:08



    老大,关键是在脚本里怎么得知这个“停止”,还有点就是,如果就用发送按键让某程序窗口向下滚动,怎么知道一次向下滚动了多少像素呢?
发表于 2011-6-25 21:14:28 | 显示全部楼层
不停的发送咯,到了底部还会继续发送的,不用管他不是行了!
反正已经到了底部了
 楼主| 发表于 2011-6-25 21:20:49 | 显示全部楼层
不停的发送咯,到了底部还会继续发送的,不用管他不是行了!
反正已经到了底部了
hzxymkb 发表于 2011-6-25 21:14


呵呵,这样可不行,若A窗口只需要滚动一会就到底部了(如只按两次 ↓ ),而B窗口需要按1000千次才到底部,怎么区别呢?
发表于 2011-6-25 21:21:42 | 显示全部楼层
相对窗口的位置是不变的。可以取色。很烂的主意。。
如果只是网页到最底下,可以发送 END键!
发表于 2011-6-25 21:23:26 | 显示全部楼层
按键盘上的end键?
发表于 2011-6-25 21:26:18 | 显示全部楼层
楼上两位正解!
 楼主| 发表于 2011-6-25 21:27:13 | 显示全部楼层
相对窗口的位置是不变的。可以取色。很烂的主意。。
如果只是网页到最底下,可以发送 END键!
chenronting 发表于 2011-6-25 21:21



    发送End肯定不行,我需要把滚动部分的截下来,再把这些部分截屏合并起来,太快,会截不到的
发表于 2011-6-25 21:32:26 | 显示全部楼层
360浏览器有这个功能!
 楼主| 发表于 2011-6-25 21:33:17 | 显示全部楼层
刚才试了下,就是发送按键 ↓ ,若两次发送之间sleep时间短了,就会丢失一些行的截屏。更别说发送End键了
发表于 2011-6-25 22:01:13 | 显示全部楼层
回复 9# happytc


    那就需要让机器跟我们人一样的去识别颜色了!
 楼主| 发表于 2011-6-25 22:10:33 | 显示全部楼层
回复 12# chenronting

应该不是这种机制的
看了下FSCapture,Picpick截图软件的滚屏功能

它们好象都可以判断滚动条到底部了,并且怎么去识别颜色呀,不同的软件滚动条颜色有可能不一样,这样失误率太高了。
 楼主| 发表于 2011-6-25 22:32:34 | 显示全部楼层
明白了,可以通过捕捉WM_HSCROLL ,  WM_VSCROLL 事件,然后通过回调函数WindowProc()来得到消息,还用wParam值是否是SB_BOTTOM来判断是否到达底部
发表于 2011-6-25 23:43:07 | 显示全部楼层
回复 13# happytc


    我不会!很无奈!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-20 06:03 , Processed in 0.077174 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表