怎么获得当前窗口垂直滚动条滑块的绝对(屏幕)坐标 ( 积分: 100 )

  • 主题发起人 主题发起人 tianzhen
  • 开始时间 开始时间
T

tianzhen

Unregistered / Unconfirmed
GUEST, unregistred user!
想实现按某键,自动把鼠标移动到垂直滚动条上,方便拖动,不习惯用滚轮。
根据鼠标位置和GetScrollPos计算出来滑块坐标,可能吗?
 
不可能的话用mousehook和消息怎么实现?
SendMessage(Handle,WM_VSCROLL,MakeWParam(SB_THUMBPOSITION,*),0);
...
我这样做的,但没能完全模拟拖动滑块的感觉。
 
为什么不直接发消息给滚动条,让它滚动。。。不要通过鼠标
 
我现在用在任意位置按住中键移动鼠标来发消息来滚动,但效果不好,跟拖滚动条的感觉不太一样,鼠标都超出屏幕了滑块还没滚到头。所以想改为自动抓滚动条滑块更简单直接。
 
滚动条里面有一个位置属性 你把按钮和他关联起来就可以了 属性名不记得了 不好意思[:D]
 
FillChar(ScrInfo, SizeOf(ScrInfo), 0);
ScrInfo.cbSize := SizeOf(ScrInfo);
ScrInfo.fMask := SIF_ALL;
GetScrollInfo(NowWindow, SB_VERT, ScrInfo);
//是说这个ScrInfol.nPos吗?怎么关联呢,这个不是绝对坐标啊
 
后退
顶部