Главная страница
    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.45 MB
Время: 0.044 c
2-1187697367
evgenij_
2007-08-21 15:56
2007.09.16
Excel


15-1187157921
Вопрошающий
2007-08-15 10:05
2007.09.16
Помогите упростить код


9-1160687791
rts111
2006-10-13 01:16
2007.09.16
Максимальный размер карты и максимальное количество юнитов в RTS?


2-1188077785
Popay
2007-08-26 01:36
2007.09.16
зависон SendMessage


15-1187433979
GhosTer
2007-08-18 14:46
2007.09.16
Где взять?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский