怎样使鼠标在embeddedwb(或webbrowser)滚动条的最上箭头或最下箭头时就自动上滚或下滚? (30分)

  • 主题发起人 主题发起人 zzhudy
  • 开始时间 开始时间
Z

zzhudy

Unregistered / Unconfirmed
GUEST, unregistred user!
有人说用以下两句可以实现,可我不知道怎么加入到程序中去?
sendmessage(webbrowser.handle, WM_VSCROLL, SB_LINEUP, 0);上滚
sendmessage(webbrowser.handle, WM_VSCROLL, SB_LINEDOWN, 0);下滚
还有我把下面语句放在button1.click事件中,想点击时滚动条下滚,可是不能实现
难道是语句不对?
sendmessage(webbrowser.handle, WM_VSCROLL, SB_LINEDOWN, 0);下滚
 
放一个timer,interval设为100,在ontimer事件中加入:
sendmessage(webbrowser.handle, WM_VSCROLL, SB_LINEUP, 0);
然后判断鼠标位置,当位于你想要的位置时令timer.enabled:=true;
 
也可在onMouseMove 中判断鼠标位置,加入:
sendmessage(webbrowser.handle, WM_VSCROLL, SB_LINEUP, 0);上滚
sendmessage(webbrowser.handle, WM_VSCROLL, SB_LINEDOWN, 0);下滚
 
TO zw84611 and 黑影:
那你又怎么能获得鼠标的位置呢(我想在滚动条的顶端或底端)?
 
TO 黑影
你怎么能获得鼠标的位置呢还有是在哪个onMouseMove中(form还是embeddedwb)
 
在embeddedwb)的on mouse move中判断,以上面的箭头按钮为例:
if(x>embeddedwb.width-10)and(y<embeddedwb.top-embeddedwb.height+10)then
timer.enabled:=true else
timer.enabled:=false;
不知有更好的方法没有。
 
TO zw84611:
在embeddedwb没有on mouse move呀
 
[:)]sorry,我没辙了。
 
TO zw84611:
我看了embeddedwb与webbrowser就没这个事件呀
 
一个比较笨的方法,在Timer中用GetCusorPos来获得位置。不过会比较占用资源。
 
实现这种效果有意义吗?
 
还是不行呀,大家帮帮忙吧
 
webbrowser中没有on mouse move这个事件呀,怎么调用呢?
 
各位请问怎样控制滚轮下滑的速度呢
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部