Вниз
Скачать: CL | DM;

Как скопировать изоброжение чужого окна.   Найти похожие ветки 

← →
Pavia ©   (2004-12-28 23:18) [0]

Как скопировать изоброжение чужого окна? При условии что его перекрывпают другии окна, или вобще свернуто.


← →
Shaman_Naydak   (2004-12-29 07:35) [1]

нормальные чужие окна должны отрабатывать
WM_PRINT и WM_PRINTCLIENT


← →
MBo ©   (2004-12-29 07:42) [2]

статья о [1] есть на
www.fengyuan.com


← →
VMcL ©   (2004-12-29 07:45) [3]

Как-то так, наверное:

function GetWindowShot(const Window: HWND): TBitmap;
var
 DC: HDC;
 R: TRect;
begin
 Result := TBitmap.Create;
 with Result do
   try
     PixelFormat := pf24bit;
     Transparent := False;
     DC := GetWindowDC(Window);
     try
       GetWindowRect(Window, R);
       Width := R.Right - R.Left;
       Height := R.Bottom - R.Top;
       BitBlt(Canvas.Handle, 0, 0, Width, Height, DC, 0, 0, SRCCOPY);
     finally
       ReleaseDC(Window, DC);
     end;
   except
     Free;
     raise;
   end;
end;


Замечание. Как видно из кода, за освобождение результирующего TBitmap"а отвечает вызывающая сторона.


← →
DeadMeat ©   (2004-12-29 22:09) [4]


> [3] VMcL ©   (29.12.04 07:45)

Проверено... Не поможет. Нужно именно [1] или что-то в этом роде...

---
...Death Is Only The Begining...


← →
Anton_K ©   (2004-12-29 22:17) [5]

Можно послать WM_PAINT, где в wParam DC нужного битмапа.


← →
Thick   (2004-12-29 22:47) [6]

А ты не узадумывался что прорисовка окна происходит именно когда его нухно прорисовать????


← →
Pavia ©   (2004-12-30 00:16) [7]

VMcL
Так я пробовал. Это мне не подходит.
Shaman_Naydak, MBo
Спасибо, это должно помочь.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.032 c
1-1107834997
Аккум
2005-02-08 06:56
2005.02.20
Динамический array of record в памяти как располагается ?


3-1106543428
SarDoX
2005-01-24 08:10
2005.02.20
Сложный поиск


4-1104417010
Katy
2004-12-30 17:30
2005.02.20
"Программа не отвечает", но она не виснет, вып незримые действия


14-1107255031
P.N.P.
2005-02-01 13:50
2005.02.20
WinRoute 4.1 - SMTP


1-1107468516
k@rt
2005-02-04 01:08
2005.02.20
Ico + Toolbar




   Наверх