- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
无论用什么正值代替 100(dwData),都会向上滚动而不是向下滚动。负值显示错误。 D7 帮助(不过我在 XE2 上)说了一些关于负值和 NT 的内容。如果这样的功能对于 XP 来说太旧了,请建议一些替代解决方案。
procedure TMainform.tmr1Timer(Sender: TObject);
begin
mouse_event(MOUSEEVENTF_WHEEL, 0, 0, 100, 0);
end;
最佳答案
If dwFlags contains MOUSEEVENTF_WHEEL, then dwData specifies the amount of wheel movement. A positive value indicates that the wheel was rotated forward, away from the user; a negative value indicates that the wheel was rotated backward, toward the user. One wheel click is defined as WHEEL_DELTA, which is 120.
请注意,我链接到的文档是 MSDN 网站。这是 Windows API 的来源。
因此,使用 WHEEL_DELTA
进行一次向前点击,使用 -WHEEL_DELTA
进行一次向后点击。您需要转换负值:
mouse_event(MOUSEEVENTF_WHEEL, 0, 0, DWORD(-WHEEL_DELTA), 0);
您不一定需要使用车轮增量的倍数。所以也许 DWORD(-100)
就可以了。
最后一点是 SendInput
优于 mouse_event
。对您来说可能不是问题,因为您只注入(inject)一个输入事件,但使用 SendInput
是一个需要养成的好习惯。
关于delphi - 如何使用 mouse_event(MOUSEEVENTF_WHEEL 模拟向下旋转滚动按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26888369/
无论用什么正值代替 100(dwData),都会向上滚动而不是向下滚动。负值显示错误。 D7 帮助(不过我在 XE2 上)说了一些关于负值和 NT 的内容。如果这样的功能对于 XP 来说太旧了,请建议
我是一名优秀的程序员,十分优秀!