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


Автор: IvanoffAndrey 17.7.2009, 12:13
Здравствуйте форумчане.

Проблема такая:

Есть компонент ScrollBox, на нем лежит TImage.

TImage может менять свой размер по ходу работы программы - он расширяется.
Но почемуто полосы прокрутки у ScrollBox не появляются?
 
подскажите как решить проблему.
 

Автор: WandG 17.7.2009, 15:01
может быть Вы поставили align = AllClient?

Автор: IvanoffAndrey 17.7.2009, 16:06
да точно! именно так и есть. спасиб за подсказку.
А обьясните пожалуйста почему так нельзя?

Добавлено через 3 минуты и 20 секунд
постаавил Aling = None
но все равно не появляются полосы прокрутки.
Вот как увеличивается tImage  
Код

Image.Picture.Bitmap.Width :=  Image.Picture.Bitmap.Width  +10 ;

Автор: Keeper89 17.7.2009, 16:11
IvanoffAndrey, как так? align = AllClient ставится для того, чтобы картинка занимала всю область скроллбокса, а он уже сам отвечает за полосы прокрутки.

Автор: IvanoffAndrey 17.7.2009, 16:17
Ничиго не понимаю.
подскажите плиз как это организовать, убрал align = AllClient все равно ничиго не получается.
Может по мимо увелечиения Битмапа картинки нужно еще что нибуть увеличивать.
попробовал еще делать так
Image.Width := Image.Width + 10.
То есть и битмап и размер компонента увеличиваются одновременно.
Но полос все равно нету.

Автор: Keeper89 17.7.2009, 16:20
Скорее всего TImage не внутри ScrollBox'а.
1. Вырежьте каринку в буфер обмена.
2. Выделите Скроллбокс и вставьте Image. При этом перемещать Image за пределы бокса будет нельзя.
3. Установите у Image Align = alClient.

Автор: mr.Anderson 17.7.2009, 16:21
Предположу, что TImage не считается контролом, для которого ScrollBox увеличивает свои размеры... Это только предположение. ПОпробуй разместить под ним, допустим, TPanel того же размера и попробуй менять ее размеры. Полосы появятся?

Автор: Keeper89 17.7.2009, 16:37
Поправочка - 3 пункт не нужен, а так все работает.

Автор: IvanoffAndrey 17.7.2009, 16:42
Keeper89 - проделал по пунктам.
все равно ничего не получается.
mr.Anderson для Кнопок - пробую их перемещать в ScrollBoxe - все работает, полосы прокрутки появляются, так все работате если увеличивать размеры кнопочек.
Для TImage все равно ничего не получается.
Что делать не представляю.

Как тогда иным образом огранизовать полосы прокрутки для tImage?

Добавлено через 1 минуту и 8 секунд
Программирую на Turbo Delphi
может это как то влияет?

Добавлено через 5 минут и 9 секунд
Все, простите за бузу. разобрался.
Тема такая что я напартачил там со свойствами выравнивая относительно ScrollBox.
Всем спасибо.

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