Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Проблема с изменением размеров TImage в RUN-time   Найти похожие ветки 

 
Dr. Well   (2003-11-03 16:20) [0]

Господа, думаю ни для кого не секрет, что в Delphi существует проблема перерисовки компонента TImage при изменении его размеров во время работы приложения...

То есть, если я создал компонент размером 100х100, то после выполнения следующего кода:

Image1.Width := 200;
Image1.Height := 200;

при полной перерисовке компонента, переривовывается только область 100х100 (та, которая была при создании компонента).

Мне необходимо изменять размеры компонента в зависимости от размеров текста, на нем нарисованного...

От TImage"а уходить не хотелось бы - он сохраняет картинку после срытия/отображения формы, в отличии от TPaintBox"а и других компонентов.

Кто-то обязательно сталкивался с такой проблемой. Если Вы ее решили - опишите, как?

С уважением Dr. Well (Alexander Yagovdik)


 
ZEE ©   (2003-11-03 16:32) [1]

а Image1.Stretch:=true не пробовал?


 
icWasya ©   (2003-11-03 16:39) [2]

Не путайте TImage и TImage.Picture.Grephics - это разные вещи.
Смотри код TImage.GetCanvas - там делается проверка - если Picture.Graphics не создан, то создаётся TBitmap с размерами TImage и берётся его Canvas
Для решения Вашей проблемы -
При изменении размеров Image сделать так

if Assigned(Image.Picture.Bitmap) then begin
Image.Picture.Bitmap.Width:=Image1.Width;
Image.Picture.Bitmap.Height:=Image1.Height;
end;


 
Dr. Well   (2003-11-03 16:40) [3]

Как это я не догадался - не думал, что все так просто...
А я уже и создавал его большим (2048х2048), закрашивал и менял размеры на поменьше...
Не подумал - мне же все равно, перерисовывать его придется...

СПАСИБО БОЛЬШОЕ!



Страницы: 1 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.072 c
3-41055
Стас
2003-10-24 12:29
2003.11.13
Вопросы по базам данных


11-41126
Пляка
2003-02-18 15:49
2003.11.13
PaintBox на принтер


14-42110
Vlad Oshin
2003-10-21 14:28
2003.11.13
Миллионер. Рассказ.


1-41198
valler
2003-11-02 12:07
2003.11.13
Востоновление иконок в tray области при перезапуске explorer


14-42137
Jek
2003-10-20 16:24
2003.11.13
Прикольное сообщение об ошибке