Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Скроллинг и вычисление прокрутки.


Автор: BaD_SeCt0R 30.9.2007, 21:11
ВОПРОС:

Как сделать проверку - прокручен-ли скрол до конца?

ОТВЕТ:

Вот это при прокрутке при щелчке на нем выводит от 0 (скролл слева) до 500 (справа):
Код

var
  X: TScrollBox;
  // ...

procedure TForm1.FormCreate(Sender: TObject);
begin
  X := TScrollBox.Create(Form1);
  X.Parent := Form1;
  X.HorzScrollBar.Range := 500 + X.ClientWidth; // !!!
  X.OnClick := MyClick;
end;

procedure TForm1.MyClick(Sender: TObject);
begin
  ShowMessage(IntToStr(X.HorzScrollBar.Position));
end;


Автор ответа: http://forum.vingrad.ru/index.php?showuser=777&nickname=sentry

Автор: fse 1.10.2007, 09:54
Можно так:

Код

var
  SI: tagSCROLLINFO;
begin
  SI.fMask := $FFFFFFFF;
  if not GetScrollInfo(ScrollBox1.Handle, SB_VERT, SI) then Exit;
  if SI.nPos >= SI.nMax - SI.nPage then BEEP;
end;

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)