Delphi: 如何获取TImgView32控件滚动条的位置?

Delphi: How to get the positions of scrollbars of TImgView32 control?

我使用 Graphics32 库并将 TImgView32 控件放在窗体上。在代码中,我想获取垂直滚动条的位置,但找不到任何属性。

如何获取TImgView32控件垂直滚动条的位置?

TImgView32TCustomControl 后代,这意味着它有自己的 HWND。因此,假设 window 使用标准的 Win32 提供的滚动条,试试 Win32 API GetScrollInfo() 函数。

uses
  Windows;

var
  si: TScrollInfo;
begin
  si.cbSize := sizeof(si);
  si.fMask := SIF_POS;
  if GetScrollInfo(ImgView1.Handle, SB_VERT, si) then
  begin
    // use si.nPos as needed...
  end;
end;