如何得到水平滚动条的水平位置?

cindysong 2003-02-08 02:10:51
请问各位大侠:
我想得到listview水平滚动条拖拉杆的水平坐标,也就是当拖拉水平滚动条时,得到它拖拉的位置,不知是否能得到?谢谢!
...全文
117 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
grail_ 2003-02-08
  • 打赏
  • 举报
回复
来晚了
那我就给一下GetScrollPos的函数说明吧
函数功能:该函数获取指定滚动条中滚动按钮的当前位置。当前位置是一个根据当前滚动范围而定的相对值。例如,如果滚动范围是0到100之间,滚动按钮在中间位置,则其当前位置为50。该函数提供了向后兼容性,新的应用程序应使用GetScroiliofo函数。

函数原型:int GetScrogPos(HWND hWnd;int nBar);

参数:

hWnd:根据参数nBar值,处理滚动条控制或带有标准滚动条窗体。

nBar:指定滚动条将被检查。这个参数可以是下面值,含义如下:

SB_CTL:找回滚动条控制中滚动翻页盒的位置。而参数hwnd必须是滚动条控制的句柄。

SB_HORZ:找回窗体上标准水平滚动条中参数滚动翻页盒的位置。

SB_VERT:找回窗体上标准垂直滚动条中参数滚动翻页盒的位置。

返回值:如果函数运行成功,其返回值是滚动翻页盒的当前位置;如果函数运行失败,其返回值是0。想若想获得更多的错误信息,请调用GetLastError函数。

注意:函数GetScrollPos可以使应用程序使用32位滚动位置。尽管消息WM_HSCROLL和WM_VSCROLL指出了滚动条位置,但却被限制为16位,而函数SetScrollPos,SetScrollRange,GetScrollPos,和 GetscrollRange都支持32位的滚动条数据。

在WM_HSCROLL或WM_VSCROLL消息中通告SB_JHUMBTRACK时,为了得到滚动条32位的位置,请调用GetScrolllnfo函数。

在WM_HSCROLL或WM_VSCROLL消息中通告SB_THUMBTRACK时,为了得到32位的滚动条,则调用函数GetScrolllnfo。

速查:Windows3.1、Windows 95以上,头文件:winuser.h;库文件:user32.lib

ehom 2003-02-08
  • 打赏
  • 举报
回复
n:=GetScrollPos(ListView1.Handle,SB_HORZ);

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧