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

Вниз

Копия содержимого активного окна в Image   Найти похожие ветки 

 
Reaktor   (2007-05-24 17:47) [0]

Написал процедуру, которая должна копировать (как мне кажется) окно одного из запущенных приложений в Image. Однако она копирует только содержимое того, окна которое в данный момент поверх всех (или рабочий стол, если все окна свернуты). Подскажите где ошибка.

procedure TForm1.Button1Click(Sender: TObject);
var
 bmp: TBitmap;
 DC : HDC;
 Wnd : HWND;
begin
   wnd := GetWindow(Handle, gw_HWndFirst);
   Wnd := GetWindow(Wnd, gw_hWndNext);
   DC := GetDC(Wnd);

   bmp := TBitmap.Create;
   try
    bmp.Width := Image1.Width;
    bmp.Height := Image1.Height;
    BitBlt(bmp.Canvas.Handle, 0, 0, 57, 57, DC, 10 , 10, SRCCopy);
    Clipboard.Assign(bmp);
   finally
    ReleaseDC ( WND, DC );
    bmp.Free;
   end;
   Image1.Picture.LoadFromClipboardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_BitMap ),0);

end;


 
clickmaker ©   (2007-05-24 17:51) [1]


> окно одного из запущенных приложений

какого именно?


 
Reaktor   (2007-05-24 17:58) [2]

Которое будет определено GetWindow как next.



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

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

Наверх




Память: 0.47 MB
Время: 0.031 c
2-1180174977
GeLLeR
2007-05-26 14:22
2007.06.17
Вопрос про dll.


2-1180105148
ppcumax
2007-05-25 18:59
2007.06.17
Delphi7 > Delphi 2005


2-1179828778
Alex7
2007-05-22 14:12
2007.06.17
Несколько строк текста в одной ячейке StringGrid


9-1143207641
VolanD666
2006-03-24 16:40
2007.06.17
Lightmap


8-1157263841
McFalu
2006-09-03 10:10
2007.06.17
Вопрос о 32 битном битмапе.