Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
1-41370
SiJack
2003-10-30 16:14
2003.11.13
Плз помогите. Делаю отчет в word2000 (win98SE) все работает норма


1-41257
Micah'GF
2003-11-04 16:13
2003.11.13
Передача класса в качестве параметра другой процедуре


3-41000
Patrick
2003-10-16 10:21
2003.11.13
Проблема с ApplyUpdates


1-41151
md
2003-11-03 12:54
2003.11.13
работа с RAM


1-41411
Saimon
2003-10-29 16:20
2003.11.13
Компилятор...




   Наверх