Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.01.2013, 21:17   #11
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Напиши и увидешь if Key = VK_RIGHT then ScrollBox1.ScrollBy(20, 0);
Спасибо, теперь понял.
А как теперь сделать ограничения перемещению? Какую переменную смотреть? Или проверять положение (св-во Position) скроллеров?
даешь высокое напряжение
Vova777 вне форума Ответить с цитированием
Старый 05.01.2013, 21:32   #12
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,281
По умолчанию

Ну, если расположение и размер компонентов в скролбаре статичны, то я бы использовал в качестве ограничения Top самого верхнего компонента, Left самого левого ну и далее по аналогии. Если компоненты изменяются динамически (я так понял не наш случай), то тоже самое, но при каждом сдвиге эти ограничивающие компоненты нужно искать с помощью цикла.
Sibedir вне форума Ответить с цитированием
Старый 05.01.2013, 21:41   #13
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию

Цитата:
Сообщение от Sibedir Посмотреть сообщение
Ну, если расположение и размер компонентов в скролбаре статичны, то я бы использовал в качестве ограничения Top самого верхнего компонента, Left самого левого ну и далее по аналогии. Если компоненты изменяются динамически (я так понял не наш случай), то тоже самое, но при каждом сдвиге эти ограничивающие компоненты нужно искать с помощью цикла.
это понятно, я имею ввиду какую переменную смотреть?
даешь высокое напряжение
Vova777 вне форума Ответить с цитированием
Старый 05.01.2013, 22:16   #14
Sibedir
Тот ещё
Старожил
 
Аватар для Sibedir
 
Регистрация: 14.11.2007
Сообщений: 2,281
По умолчанию

Ну например:
ScrollBox1.ScrollBy(-20, 0);
если (СамыйПравыйКомпонент.Left + СамыйПравыйКомпонент.Width) < 10 то
ScrollBox1.ScrollBy((10 - СамыйПравыйКомпонент.Left - СамыйПравыйКомпонент.Width), 0);

Последний раз редактировалось Sibedir; 05.01.2013 в 22:19.
Sibedir вне форума Ответить с цитированием
Старый 05.01.2013, 22:23   #15
Vova777
Уважаемый
Форумчанин
 
Аватар для Vova777
 
Регистрация: 04.07.2010
Сообщений: 318
По умолчанию

Спасибо, теперь все понятно.
даешь высокое напряжение
Vova777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Форма остаётся видимой при Visible=False Viteef Общие вопросы Delphi 10 23.02.2015 08:07
как связать таблицы свойством MsterFields Bogdand Помощь студентам 0 11.05.2012 15:35
TScrollBox и его невидимая область. Как с этим бороться? Смотрим внутри... Vova777 Общие вопросы Delphi 3 17.02.2012 18:38
Как перемещать изображение по панели? AndersonEgo C# (си шарп) 3 27.05.2011 10:05
Как перемещать? Черничный Общие вопросы Delphi 4 09.06.2008 13:56