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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2009, 12:56   #1
Алён@
Пользователь
 
Аватар для Алён@
 
Регистрация: 15.01.2009
Сообщений: 43
По умолчанию Координаты центра видимой части ScrollBox

Как их посчитать?
Есть ли такое свойство у этого бокса, как ширина видимой области по горизонтали и по вертикали?
Алён@ вне форума Ответить с цитированием
Старый 04.02.2009, 13:02   #2
r9m
₪₪₪₪₪₪₪₪
Форумчанин
 
Аватар для r9m
 
Регистрация: 16.04.2007
Сообщений: 471
По умолчанию

собственно height & width. Берём эти значения, делим на 2 - это и будут координаты центра
r9m вне форума Ответить с цитированием
Старый 04.02.2009, 13:05   #3
Алён@
Пользователь
 
Аватар для Алён@
 
Регистрация: 15.01.2009
Сообщений: 43
По умолчанию

Нет, это не то. Это параметры всего бокса, а мне нужна только текущая видимая область.
Алён@ вне форума Ответить с цитированием
Старый 04.02.2009, 16:07   #4
Kotofff
Участник клуба
 
Аватар для Kotofff
 
Регистрация: 11.01.2009
Сообщений: 1,917
По умолчанию

тогда проверяй на видимость полосы прокрутки и если они обе или по одной видны - вычитай из ширины и(или) высоты самого контрола их ширину (вертикальной) или высоту (горизонтальной) :
Код:
GetSystemMetrics(SM_CXVSCROLL) или
GetSystemMetrics(SM_CYHSCROLL)
"Заряженному танку в дуло не смотрят" @Dekmer in WoT
Kotofff вне форума Ответить с цитированием
Старый 04.02.2009, 16:16   #5
r9m
₪₪₪₪₪₪₪₪
Форумчанин
 
Аватар для r9m
 
Регистрация: 16.04.2007
Сообщений: 471
По умолчанию

Чёт я всё равно не пойму, что же ты тогда подрузамеваешь под видимой областью?
r9m вне форума Ответить с цитированием
Старый 04.02.2009, 16:21   #6
Алён@
Пользователь
 
Аватар для Алён@
 
Регистрация: 15.01.2009
Сообщений: 43
По умолчанию

Это та часть рисунка, которую в данный момент видит пользователь. Если рисунок больше предназначенной для отображения рисунка области появляются полосы прокрутки.
Алён@ вне форума Ответить с цитированием
Старый 04.02.2009, 16:37   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

ScrollBox1.VertScrollBar.ScrollPos
ScrollBox1.HorzScrollBar.ScrollPos

пробуй
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.02.2009, 16:38   #8
Алён@
Пользователь
 
Аватар для Алён@
 
Регистрация: 15.01.2009
Сообщений: 43
По умолчанию

Уже пробовала - это хороший вариант. Но нужно к этому что-то прибавить, чтобы попасть в середину. Вот что? Я пока думаю.
Алён@ вне форума Ответить с цитированием
Старый 04.02.2009, 16:45   #9
Алён@
Пользователь
 
Аватар для Алён@
 
Регистрация: 15.01.2009
Сообщений: 43
По умолчанию

Ура! Придумала. Вот то, что надо

PointCenter.X:=form1.ScrollBox1.Hor zScrollBar.Position+round(form1.Scr ollBox1.Width/2)

Всем спасибо!
Алён@ вне форума Ответить с цитированием
Старый 04.02.2009, 16:46   #10
Алён@
Пользователь
 
Аватар для Алён@
 
Регистрация: 15.01.2009
Сообщений: 43
По умолчанию

Цитата:
Сообщение от Kotofff Посмотреть сообщение
тогда проверяй на видимость полосы прокрутки и если они обе или по одной видны - вычитай из ширины и(или) высоты самого контрола их ширину (вертикальной) или высоту (горизонтальной) :
Код:
GetSystemMetrics(SM_CXVSCROLL) или
GetSystemMetrics(SM_CYHSCROLL)
Это не прошло.
Алён@ вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Форма остаётся видимой при Visible=False Viteef Общие вопросы Delphi 10 23.02.2015 08:07
Создание мини дата-центра Alar Свободное общение 20 03.09.2009 09:11
ScrollBox Mickle Помощь студентам 1 31.03.2007 14:10
Как определить координаты видимой части PaintBox? Vladimir K. Общие вопросы Delphi 3 28.12.2006 10:02