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

Вниз

Изображение окна   Найти похожие ветки 

 
murava ©   (2006-09-18 12:28) [0]

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


 
KilkennyCat ©   (2006-09-18 12:39) [1]

теоретически - да. а практически - я б его сделал на мгновение поверх всех. так проще.


 
murava ©   (2006-09-18 12:49) [2]

To KilkennyCat:
А можешь подсказать как именно получить изображение. Я нашел функцию в WinApi (что-то типа BitBlt... точно не помню :)), она перерисовывала окно изображением с другого, а мне б именно получить это изображение без всякого гимороя :)
P.S. В той функции BitBlt используеться КОНТЕКСТ окна, а чем именно отличаеться контекст от самого окна?


 
KilkennyCat ©   (2006-09-18 13:52) [3]

> а чем именно отличаеться контекст от самого окна?


Мне затруднительно ответить... а что такое - самое окно?

BitBlt замечательно работает.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/bitmaps_0fzo.asp

Если сложно непосредственно с требуемым окном, то можно обратится к рабочему столу... пример из кулибы:

 procedure TForm1.Button1Click(Sender: TObject);  var DeskTop : TCanvas ; begin DeskTop := TCanvas.Create ;  try  with DeskTop do  Handle := GetWindowDC (GetDesktopWindow) ; with PaintBox1.Canvas do  CopyRect (Rect (0, 0, 200, 200),  DeskTop,  Rect (0, 0, 200, 200)) finally  DeskTop.Free endend;  
Это скопирует верхнюю левую область рабочего стола в верхнюю левую область вашего TPaintBox.


 
DeadMeat ©   (2006-09-19 00:49) [4]

http://www.fengyuan.com/article/wmprint.html



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

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

Наверх




Память: 0.47 MB
Время: 0.049 c
15-1167861371
Palladin
2007-01-04 00:56
2007.01.28
Орешник


6-1156437318
i-s-v
2006-08-24 20:35
2007.01.28
Прослушка сети


1-1165034574
SerB
2006-12-02 07:42
2007.01.28
Variant


4-1158512260
@!!ex
2006-09-17 20:57
2007.01.28
GetSystemTime Part II


2-1168416384
Rentgen
2007-01-10 11:06
2007.01.28
как из TDateTime вычесть к примеру 5 минут?