Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Вниз

Как сделать скриншот без вывода на экран? 


OGR   (2002-01-23 13:24) [0]

Можно ли так сделать?
Спасибо.



copyr25   (2002-01-23 21:33) [1]

Т.е. выводом в файл? Можно. И с bmp и с jpg. Хочешь, пришлю пример.



copyr25   (2002-01-23 21:44) [2]

Самый известный пример:
procedure TForm1.Button1Click(Sender: TObject);
var
DC: HDC;
Canva: TCanvas;
B: TBitmap;
begin
Canva := TCanvas.Create;
B := TBitmap.Create;
DC := GetDC(0);
try
Canva.Handle := DC;
with Screen do begin
B.Width := Width;
B.Height := Height;
B.Canvas.CopyRect(Rect(0, 0, Width, Height), Canva,
Rect(0, 0, Width, Height));
B.SaveToFile("c:\screen.bmp");
end
finally
ReleaseDC(0, DC);
B.Free;
Canva.Free
end
end;



MrAngel   (2002-01-24 17:48) [3]

Во народ!! А тогда встречный вопрос. Как сделать скин сшот окна или экрана если самого окна нет на экране или оно закрыто другими окнами.
Во!



MrAngel   (2002-01-24 17:51) [4]

Поясню вопрос. Как сделать скрин шот окна если оно свёрнуто в панели задач или оно закрыто другими окнами.
Я пробовал. Но мне функция показывала только то что находится в переди этого окна.



Tosov   (2002-01-24 19:57) [5]

MrAngel
Screen Shot - снимок ЭКРАНА со всеми вытекающими последствиями.



copyr25   (2002-01-24 21:03) [6]

Mr.Angel:))) Просто всю дорогу нужно помнить, что это ОКНА:)))



DMN   (2002-01-25 16:23) [7]

WM_PRINT или WM_PRINTCLIENT, с указанием в качестве Device Context хэндла канвы битмэпа...



MrAngel   (2002-01-28 16:43) [8]

DMN а мона с примером. Я в WM уже давно не занимался.
Заранее спасибо.



OGR   (2002-01-28 17:53) [9]

Я тут в MSDN"е покопался, кроме WM_PRINT"a есть фунцкция PrintWindow, но она насколько я понял она появилась только в Win XP...
А с WM_PRINT"ом я тоже пока никак разобраться немогу...
Если буду ОЧЕНЬ благодарен если ктонибудь приведет пример...



OGR   (2002-01-28 18:09) [10]

Еще нашел 3-е решение: интерфейс IViewObject из библиотеки ActiveX(о нем можно почитать в дельфевском хелпе)....
Вот я уже знаю три решения но ни одно ни могу применить :(



MrAngel   (2002-01-29 17:13) [11]

Ребята а сообщение посылать через SendMessage или PostMessage ?




Форум: "WinAPI";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.027 c
14-91074          den_c                 2002-02-16 16:50  2002.03.28  
нужна документация по написанию сервисов


3-90812           ОлегЕ                 2002-03-04 14:49  2002.03.28  
asInt64


1-90907           IronHawk              2002-03-15 22:46  2002.03.28  
Как в StringGrid забросить данные из *.txt файла ?


3-90752           AndrewK               2002-02-27 16:06  2002.03.28  
Как править записи в DBGrib?


3-90786           Зинец Виктор          2002-03-01 15:23  2002.03.28  
Как заставить клиента MIDAS (или DCOM?) заработать?