Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Hbitmap [Delphi, Windows]


tamerlan311 ©   (2002-08-10 21:35:00) 

как загрузить в Pbitmap изображение если известен его шендл (Hbitmap)


tamerlan311   (2002-08-12 22:42:00) [1]

наконец-то я разобрался!

Mybmp.Handle:=HMyBitmap непойдет т.к. при уничтожении обекта которому принадлежит HMyBitmap , КАРТИНКА БУДЕТ ПОТЕРЯНА!
значит нужно создать новый HBitmap скопировать туда интересующее нас изображение и присвоить Mybmp.Handle !

Вот процедура копирования:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
function Bitmap_copy(origin: Hbitmap): Hbitmap;
var
size:TSize;
dc,dc1:HDC;
res,res1:THandle;

begin
Result:=0;
size:=Bitmap_size(origin);
dc:=CreateCompatibleDC(0);
res:= SelectObject(dc, origin);
if res=0 then begin ShowMessage("Ошибка при копировании битмапа!");Exit;end;
dc1:=CreateCompatibleDC(dc);
Result:=CreateCompatibleBitmap(dc,size.cx,size.cy);
res1:=SelectObject(dc1,Result);
BitBlt( dc1,0,0,size.cx,size.cy,dc,0,0,SrcCopy);
SelectObject(dc,res);
DeleteDC(dc);
SelectObject(dc1,res1);
DeleteDC(dc1);
end;

_________________________________________________________________

и теперь Mybmp.Handle:=Bitmap_copy(HMyBitmap);

надеюсь это замечание кому-нибудь пригодиться!


Gandalf   (2002-08-12 09:08:00) [2]

>спасибо большое!
>Я не нашол свойство AssignHandle у Pbitmap !!
Потому что его нет. А зачем благодарил,я же сказал "вроде", значит неуверен. Ну Win полетел - а так не помню.
Хммм. Создай новый битмап (PBitmap) и на него нарисуй HBitmap.
Это конечно не совсем то, но всеже.

ЗЫ: Попробуй просто
Mybmp.Handle:=HMyBitmap. (он есть)
"Вроде" должно помочь.


tamerlan311   (2002-08-11 22:26:00) [3]

Я не нашол свойство AssignHandle у Pbitmap !!


tamerlan311   (2002-08-11 13:59:00) [4]

спасибо большое!


Gandalf   (2002-08-11 11:34:00) [5]

Вроде есть AssignHandle.


Наверх

Титульная страница Поиск, карта сайта Написать письмо