加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

delphi – 我如何知道何时停止滚动TScrollBar?

发布时间:2020-12-15 09:06:50 所属栏目:大数据 来源:网络整理
导读:我已经使用了一些带滚动条的程序,当你还在拖动“拇指”时更新链接的内容,而其他程序在你释放鼠标之前不会.这意味着此处涉及不同类型的 Windows消息.但是我从TScrollBar中找到的只是一个OnScroll事件,在你拖动的时候不断激活.它也没有OnMouseDown或OnMouseUp
我已经使用了一些带滚动条的程序,当你还在拖动“拇指”时更新链接的内容,而其他程序在你释放鼠标之前不会.这意味着此处涉及不同类型的 Windows消息.但是我从TScrollBar中找到的只是一个OnScroll事件,在你拖动的时候不断激活.它也没有OnMouseDown或OnMouseUp事件.有没有办法为TScrollBar设置“OnEndDragging”通知?

解决方法

尝试使用此代码(使用Delphi 2009测试),当您跟踪拇指时,它将使用随机颜色填充表单客户端区域,并在拇指释放时将其填充为黄色:

procedure TForm1.ScrollBar1Scroll(Sender: TObject; ScrollCode: TScrollCode;
  var ScrollPos: Integer);
begin
  Randomize;
  if ScrollCode = scTrack then
    Color := RGB(Random(256),Random(256),Random(256));
  if ScrollCode = scEndScroll then
    Color := clYellow;
end;

TScrollCode值映射到您将为WM_HSCROLL和WM_VSCROLL记录的WPARAM值.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读