在C#中使用WINAPI时如何检测滚动到窗口底部的时间

时间:2012-05-11 14:44:22

标签: c# winforms winapi

我正在创建一个应用程序,使用C#.NET 4拍摄滚动窗口的屏幕截图。

我已经通过使用带有WM_MOUSEWHEEL的WINAPI SendMessage一次向下移动1行并拍摄每行的屏幕截图来解决这个问题。

为了检测我是否已经到达底部我比较了最后拍摄的2张图像,如果它们相同,我已到达底部。

当最后一个WM_MOUSEWHEEL不是一个完整的行时出现问题。

例如: 窗口高95px 每行10px

我最终会得到10张图像,每张10px高,但是最后一张图像会太大,最终会复制(在本例中)85到90px之间的区域

有没有其他方法可以使用WINAPI来检测滚动的像素数量或采取的方法的其他任何建议?

1 个答案:

答案 0 :(得分:1)

查看GetScrollPositionGetScrollRange

我认为这些API调用可以为您提供所需的信息。