Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.13;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.04 c
8-1119530862
Ш-К
2005-06-23 16:47
2005.11.13
Как сделать изображение бледнее?


14-1129551225
Maximus2005
2005-10-17 16:13
2005.11.13
Delphi & Fireberd


2-1130080255
TStas
2005-10-23 19:10
2005.11.13
Почему эдин программно неправильно выделятся?


1-1130065186
Smarty
2005-10-23 14:59
2005.11.13
Помогите с Invalid floating point operation!!


1-1130164347
Katya2100000000
2005-10-24 18:32
2005.11.13
Лёгкий вопрос