Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

Курс видеоуроков КРЭКЕРСТВО + ПРОГРАММИРОВАНИЕ 2017
(актуальность: апрель 2017)
Свежие инструменты, новые видеоуроки!

  • 400+ видеоуроков
  • 800 инструментов
  • 100+ свежих книг и статей

УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



Как копировать и вставлять Bitmap через буфер обмена


 function CopyClipToBuf(DC: HDC; Left, Top,
            Width, Height: Integer;  Rop: LongInt;
            var CopyDC: HDC;
            var CopyBitmap: HBitmap): Boolean;
 
 var
   TempBitmap: HBitmap;
 
 begin
   Result := False;
   CopyDC := 0;
   CopyBitmap := 0;
   if DC <> 0 then
     begin
       CopyDC := CreateCompatibleDC(DC);
       if CopyDC <> 0 then
         begin
           CopyBitmap := CreateCompatibleBitmap(DC,
                           Width, Height);
           if CopyBitmap <> 0 then
             begin
               TempBitmap := CopyBitmap;
               CopyBitmap := SelectObject(CopyDC,
                               CopyBitmap);
               Result := BitBlt(CopyDC, 0, 0,
                           Width, Height, DC,
                           Left, Top, Rop);
               CopyBitmap := TempBitmap;
             end;
         end;
     end;
 end;
 
 function CopyBufToClip(DC: HDC; var CopyDC: HDC;
            var CopyBitmap: HBitmap;
            Left, Top, Width, Height: Integer;
            Rop: LongInt; DeleteObjects: Boolean): Boolean;
 
 var
   TempBitmap: HBitmap;
 
 begin
   Result := False;
   if (DC <> 0) and
      (CopyDC <> 0) and
      (CopyBitmap <> 0) then
     begin
       TempBitmap := CopyBitmap;
       CopyBitmap := SelectObject(DC, CopyBitmap);
       Result := BitBlt(DC, Left, Top,
                   Width, Height, CopyDC,
                   0, 0, Rop);
       CopyBitmap := TempBitmap;
       if DeleteObjects then
         begin
           DeleteDC(CopyDC);
           DeleteObject(CopyBitmap);
         end;
     end;
 end;
 
 




<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS