Программная прокрутка THorzScrollBox Firemonkey XE6
У меня есть THorzScrollBox
в форме, а некоторые TStyledControls
внутри. каждый StyledControl
имеет Tag
идентифицировать. Используя TEdit
чтобы сообщить значение, я могу найти внутри ScrollBox
конкретный Control
его tag
,
Если control
что я искал не на экране, я хочу прокрутить ScrollBox
показать это.
Как я могу сделать это программно?
1 ответ
Я нашел способ сделать это. Я должен использовать ScrollBy
, Но суть в том, что если я хочу прокрутить элементы управления вправо, я должен использовать отрицательное значение. Пример:
sbItems.ScrollBy(-10, 0); // this will scroll to right
Если я использую положительное значение, оно будет прокручиваться влево.
sbItems.ScrollBy(10, 0); // this will scroll to left
Дело в том, что если вы прокрутите один раз, ViewportPosition
изменится и в следующий раз вы выполните ScrollBy
, он не будет сбрасывать позицию прокрутки, он будет прокручиваться от точки, которую вы уже прокрутили.