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

Вниз

Как клонировать vcl-объект?   Найти похожие ветки 

 
Arks ©   (2007-08-20 14:59) [0]

Возможно глупый вопрос, но я давно уже не работал в Делфи. Не могу вспомнить, как клонировать объект, т.е. скопировать его содержимое, а не ссылку на него. В частности мне требуется сделать копию битмапа из имэджа:
bmp := Image1.Picture.Bitmap; // так копируется только ссылка, а как сам объект?


 
DVM ©   (2007-08-20 15:06) [1]


> так копируется только ссылка, а как сам объект?

BitBlt или Draw()


 
DVM ©   (2007-08-20 15:10) [2]

Это скопирует изображение, сам объект Bitmap надо предварительно создать и выставить у него размеры и глубину цвета перед копированием.


 
Arks ©   (2007-08-20 15:13) [3]

> BitBlt или Draw()
? Это ведь api функция и вообще не знаю какая (Draw у TBitmap нет)...
Можете написать код?
Есть bmp :TBitmap и Image1 : TImage.
Скопировать битмап из image1 в bmp.


 
DVM ©   (2007-08-20 15:15) [4]


> Draw у TBitmap нет

у канвы его есть зато.


 
Leonid Troyanovsky ©   (2007-08-20 15:17) [5]


> Arks ©   (20.08.07 15:13) [3]

> Можете написать код?

VCL Reference
Assign, Dormant, FreeImage, Monochrome, ReleaseHandle, LoadFromFile example

--
Regards, LVT.


 
Anatoly Podgoretsky ©   (2007-08-20 15:17) [6]

Assign


 
DVM ©   (2007-08-20 15:18) [7]

var
 Bmp: TBitmap;
begin
 Bmp := TBitmap.Create;
 Bmp.Width := Image1.Picture.Bitmap.Width;
 Bmp.Height := Image1.Picture.Bitmap.Height;
 Bmp.PixelFormat := Image1.Picture.Bitmap.PixelFormat;
 Bmp.Canvas.Draw(0, 0, Image1.Picture.Bitmap);

end;


 
Arks ©   (2007-08-20 15:30) [8]

Спасибо за помощь.



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

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

Наверх




Память: 0.48 MB
Время: 0.018 c
11-1171022650
WiseImp
2007-02-09 15:04
2007.09.16
Turbo Delphi?


15-1187473702
CodeGen
2007-08-19 01:48
2007.09.16
Как лучше хранить и редактировать дерево находящееся в массиве?


2-1187873730
Алла_И
2007-08-23 16:55
2007.09.16
Копирование через Pointer


9-1159867542
codent
2006-10-03 13:25
2007.09.16
Как делать игры


1-1183818645
Ricks
2007-07-07 18:30
2007.09.16
Разминка для мозгов