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

Вниз

Как скопировать небольшую часть картинки в новый битмап?   Найти похожие ветки 

 
Artemiy2004   (2004-10-30 13:55) [0]

Добрый день, вот нашел такой исходник на вашем форуме. В нем предполагалось копирование изображения панельки в битмап. Хотел тоже самое сделать, но только скопировать маленький кусочек размером 16х16 из большой картинки которая загружена в Image1.
Далее этот новый маленький битмап делаю глифом SpeedButton. Результат, вместо картинки вставляется пустота. Что я тут неверно делаю, поправьте исходник пожалуйста.

procedure TForm1.MakeBitMap;
var
srcDC, destDC: HDC;
hbm: HBITMAP;
resBMP: TBitMap;
begin
resBMP := TBitMap.Create;

srcDC := GetDC(Image1.Picture.Bitmap.Handle);
destDC := CreateCompatibleDC(srcDC);

// создаем битмап
hbm := CreateCompatibleBitMap(srcDC, 16, 16);

SelectObject(destDC, hbm);

// копируем содержимое
BitBlt(destDC, 0, 0, 16, 16, srcDC, 0, 0, SRCCOPY );

resBMP.Handle := hbm;

// после использования удаляем все лишнее
DeleteDC( destDC );
ReleaseDC(Image1.Picture.Bitmap.Handle, srcDC );
DeleteObject( hbm );

SpeedButton1.Glyph := resBMP;
end;


 
Artemiy2004   (2004-10-30 14:12) [1]

очень нужно, помогите плиз.


 
Defunct ©   (2004-10-30 21:17) [2]

CopyRect


 
Mihey_temporary ©   (2004-10-30 23:39) [3]

Кстати, ты знаешь, что TBitmap.Canvas.Handle имеет тип HDC??? Действуй.



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

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

Наверх




Память: 0.47 MB
Время: 0.066 c
14-1098805148
Сайбель Алексей
2004-10-26 19:39
2004.11.14
Клещ


11-1082642241
Max Kozlov
2004-04-22 17:57
2004.11.14
проблема с ActiveKOL, точнее с KOLComObj


14-1098948058
Jena_
2004-10-28 11:20
2004.11.14
кидалово или нет?


1-1098887948
Koala
2004-10-27 18:39
2004.11.14
панель задач и формы в Dll


4-1096881300
Plotnick
2004-10-04 13:15
2004.11.14
Как поместить форму на диалоговое окно другой программы