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

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

Не удается вывести изображение на форму Без VCL! [D7]


mreg ©   (2009-03-25 23:41:00) 

Не удается вывести изображение на форму. Без VCL!

function LoadTail(Name:PChar):HBITMAP;
var
 Bitmap :HBITMAP;
 WinDC,BitDC:HDC;
begin
 Bitmap := LoadBitmap(HInstance,'FLOOR');
 WinDC := GetDC(hWindow);
 BitDC := GetDC(Bitmap);
 bitBlt(WinDC,0,0,100,100,BitDC,0,0,SrcCopy);
end;

битмап грузит, но не выводит ((


KilkennyCat   (2009-03-26 11:49:00) [1]

ну и все Delete c Release  - это тоже функции.


KilkennyCat   (2009-03-26 11:47:00) [2]


> тут ничего лишнего?

тут нехватает.
Bitmap - оставляем жить вечно?
LoadBitmap может вернуть 0
SelectObject может вернуть 0
BitBlt может вернуть 0


Eraser   (2009-03-26 03:33:00) [3]

> [0] mreg   (25.03.09 23:41)

изображение на окно/форму нужно выводить только в обработчике OnPaint/WM_PAINT.


mreg   (2009-03-25 23:56:00) [4]

Разобрался. Токо хотел спросить тут ничего лишнего?

function LoadTail(Name:PChar):HBITMAP;
var
 Bitmap, OldBMP :HBITMAP;
 hWDC,hMemDC:HDC;
begin
 hWDC := GetDC(hWindow);
 hMemDc := CreateCompatibleDC(hWDC);
 Bitmap := LoadBitmap(HInstance,'FLOOR');
 OldBMP := SelectObject(hMemDc,Bitmap);
 BitBlt(hWDC,0,0,24,24,hMemDc,0,0,SRCCOPY);
 DeleteObject(SelectObject(hMemDc, OldBMP));
 DeleteDC(hMemDC);
 ReleaseDC(0,hWDC);
end;


Наверх

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