-
deplomat (30.06.09 22:08) [0]procedure DrawSprite(index:SmallInt);
var
dc:hdc;
hdcMem: HDC;
bmp:HBITMAP;
begin
dc := GetDC(handle);
bmp := LoadBitmap(HInstance,PChar('spr'+ Inttostr(index)));
hdcMem := CreateCompatibleDC(dc);
//BitBlt(dc,0,0,SWidth,SHeight, hdcMem, 0, 0, WHITENESS);
SelectObject(hdcMem, Sprites[index]);
BitBlt(dc,0,0,SWidth,SHeight, hdcMem, 0, 0, SRCCOPY);
DeleteDC(dc);
ReleaseDC(handle,dc);
end;
Повешен на таймер, выводяться картинки: 1, 2, 3, на последней (после которой должно все повторяться) анимация прекращается, в чем может быть проблема? -
deplomat (30.06.09 22:20) [1]Все! Пардон, синтаксическая ошибка, Sprites[index] оставил. Но всеравно есть один вопрос: старый HBITMAP освобождается после вызова нового SelectObject?