Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.13;
Скачать: CL | DM;

Вниз

Копирование Canvas в Clipboard   Найти похожие ветки 

 
Ptr   (2002-12-30 13:51) [0]

Уважаемые !!! Как скопировать содержимое окна (но не окна полностью, а только рабочей области) в Clipboard. Окно может быть скрыто.


 
MBo ©   (2002-12-30 14:02) [1]

GetDC - получаем контекст клиентской области, BitBlt его на TBitmap, который Assign в ClipBoard.


 
Ptr   (2002-12-30 14:37) [2]

Написал по Вашему рецепту, но не работает...

procedure TForm1.BitBtn4Click(Sender: TObject);
var
PtrHDC: HDC;
MyFormat : Word;
PtrBitMap: TBitmap;
AData,APalette : THandle;
begin
PtrHDC := GetDC(Handle);
PtrBitMap := TBitmap.Create;
BitBlt(PtrBitMap.Canvas.Handle,0,0,Width,height,PtrHDC,Width,height,SrcCopy);
Clipboard.Assign(PtrBitMap);
end;


 
MBo ©   (2002-12-30 14:47) [3]

var
PtrHDC: HDC;
PtrBitMap: TBitmap;
begin
PtrHDC := GetDC(Handle);
PtrBitMap := TBitmap.Create;
PtrBitMap.Width:=ClientWidth;
PtrBitMap.Height:=ClientHeight;
BitBlt(PtrBitMap.Canvas.Handle,0,0,ClientWidth,ClientHeight,
PtrHDC,0,0,SrcCopy);
Clipboard.Assign(PtrBitMap);


 
MBo ©   (2002-12-30 14:48) [4]

и в конце
PtrBitMap.Free;


 
Ptr   (2002-12-30 14:51) [5]

ОГРОМНОЕ СПАСИБО !!!!!!!


 
Ptr   (2002-12-30 15:24) [6]

Уважаемый MBo !!!
А как быть, если окно частично скрыто?
Тогда в Clipboard копируется только видимая часть?


 
MBo ©   (2002-12-30 15:43) [7]

>А как быть, если окно частично скрыто?
тогда нетривиально
Посмотри
http://www.fengyuan.com/article/wmprint.html



Страницы: 1 вся ветка

Текущий архив: 2003.02.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
8-38394
Карелин Артем
2002-10-28 12:24
2003.02.13
Похож????


3-38067
Ig0r
2003-01-27 10:53
2003.02.13
ключевое поле в ADO


14-38456
Barman
2003-01-30 12:37
2003.02.13
Delphi и С++Builder


14-38511
OlegKrt
2003-01-28 14:12
2003.02.13
Кто-нибудь может посоветовать генератор отчетов типа как в 1С


14-38508
stim
2003-01-28 12:11
2003.02.13
Нужна процедура , что-то вроде CopyFile(fromFile,ToFile: stirng);