代码之家  ›  专栏  ›  技术社区  ›  user1580348

如何使用一个命令将滚动条夹点发送到最顶部位置?

  •  4
  • user1580348  · 技术社区  · 8 年前

    最高职位 发送 WM_VSCROLL 重复向控件发送消息:

    ScrollBox1.Perform(WM_VSCROLL, MakeWParam(SB_PAGEUP, 0), 0);
    

    enter image description here

    但这需要知道我必须向控件发送消息多少次才能将滚动条设置到最顶部位置,这取决于滚动条夹点相对于滚动条高度的比例大小。或者,我可以重复发送消息,次数不合理,这似乎不是最佳解决方案。

    那么,如何将滚动条发送到顶部 一个命令 与滚动条夹点相对于滚动条高度的比例大小无关?

    1 回复  |  直到 8 年前
        1
  •  12
  •   LU RD    8 年前

    要将工具栏滚动到顶部:

    ScrollBox1.VertScrollBar.Position := 0;
    

    看见 Vcl.Forms.TControlScrollBar.Position


    WM_VSCROLL message :

    滚动到顶部:

    ScrollBox1.Perform( WM_VSCROLL, MakeWParam(SB_Top,0),0);
    

    ScrollBox1.Perform( WM_VSCROLL, MakeWParam(SB_Bottom,0),0);
    
    推荐文章