Вниз
Скачать: CL | DM;

TImage.Bitmap   Найти похожие ветки 

← →
SMATMP ©   (2005-10-20 13:51) [0]

Уважаемые мастера! Почему если ни Image1.Picture.Bitmap, ни Bitmap не пустые, то при попытке выполнить

Image1.Picture.Bitmap := Bitmap;

выдается ошибка?
Как отобразить Bitmap в Image1.Picture.Bitmap, если TImage не пуст?


← →
Arimag   (2005-10-20 14:03) [1]

Потому что TBitmap довольно сложный класс, это тебе не две переменные типа integer. В таких случаях пользуются прцедурой assign. И твой код должен выглядеть примерно так:
var
Bitmap: TBitmap;
begin
Bitmap:=TBitmap.create;
 .....
Image1.Picture.Bitmap.assign(Bitmap);
 ....
end;


← →
SMATMP ©   (2005-10-20 14:56) [2]

Отлично! Только вот содержимое Bitmap при этом меняется одновременно с TImage.


← →
Arimag   (2005-10-21 17:05) [3]

Куда оно меняется? Ты оператором
Image1.Picture.Bitmap.assign(Bitmap); фактически присвиваешь картинку из BitMap в Image. Image теперь показывает ту картинку, которая была в BitMap. Так что изменяется Image, а не Bitmap.


← →
SMATMP ©   (2005-10-24 07:41) [4]

Понятно. А для TBitmap тогда приемлимо Bitmap1 := Bitmap2? И требуется ли предварительное уничтожение TBitmap (Free, Destroy, := nil)?


← →
Arimag   (2005-10-24 10:24) [5]


> приемлимо Bitmap1 := Bitmap2

приемлемо не будет.
А уничтожение конечно требуется методом Free.


← →
SMATMP ©   (2005-10-24 12:31) [6]

То есть и для TBitmap (я здесь не имею в виду TImage, а := TBitmap.Create) также необходимо использовать

Bitmap1.assign(Bitmap2);?


← →
Arimag   (2005-10-24 16:27) [7]

Нет если ты пользуешся TBitmap то можно хоть присваивать, хоть пользоваться методом Assign


← →
SMATMP ©   (2005-10-24 18:13) [8]

Спасибо за ответ. Насколько я понял - невизуальному компоненту (если Bitmap : TBitmap конечно является таковым) можно присваивать значение, а  свойству Bitmap визуального компонента Image : TImage нельзя, а возможно только его связь с Bitmap : TBitmap. Хотя если честно непонятно почему.



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

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



Память: 0.46 MB
Время: 0.041 c
14-1129738743
ioas
2005-10-19 20:19
2005.11.13
вопрос по Apache


2-1129745023
serko
2005-10-19 22:03
2005.11.13
MainMenu


1-1129886616
VID
2005-10-21 13:23
2005.11.13
Как выводить запрос на сохранение измений в Excel ?


1-1129647736
lehich
2005-10-18 19:02
2005.11.13
Find.Execute в WordDocument


14-1130140271
syte_ser78
2005-10-24 11:51
2005.11.13
какие базы (локальные) поодерживают украинскую локализацию?




   Наверх