Re[7]: печать картинки API-ыми функциями
От: DjAndy Россия  
Дата: 13.03.03 15:09
Оценка:
Привет

Так, короче я стормозил. Я подумал, что SelectObject вернёт NULL, потому что контекст только что создан, и битмап в него ещё никакой не селектили

Я чего не понял, если честно, вот у тебя в коде создался h_dc_pic, и больше нигде не юзится, зато есть h_dc_mem, который нигде не создаётся, зато в конце удаляется Ничего не перепутала?
Вот этот код должен работать, если не заработает, значит ошибка где-то в другом месте:

h_dc_pic:=CreateCompatibleDC(h_dc);
if(h_dc_pic <> NULL) then begin
lbmp:=SelectObject(h_dc_pic,img2.Picture.Bitmap.Handle);
if(lbmp <> 0) then begin
StretchBlt(h_dc,0,0,picW,picH,h_dc_pic,0,0,img2.Picture.Bitmap.Width,img2.Picture.Bitmap.Height,SRCCOPY);
SelectObject(h_dc_pic,lbmp);
end
else Log('');//запись в лог
DeleteDc(h_dc_mem);
end;
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.