Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Звук, графика и видео > Скриншоты


Автор: -=Fox=- 1.2.2003, 21:46
Hi!

Подскажите пожалуйста как в Delphi, делать скриншоты с любой части экрана.

Спасибо

Автор: Mikel 1.2.2003, 22:10
Var B:TBitmap;
DC:hDC;
begin
DC:=GetDC(0);
B:=TBitmap.Create;
B.Width:=Screen.Width;
B.Height:=Screen.Height;
B.Canvas.Handle:=DC;
B.SaveToFile(...);
B.Free;
ReleaseDC(0,DC);
end;

Автор: -=Fox=- 1.2.2003, 22:22
На строчке

Код


 B.SaveToFile('c:\test.bmp');



фатальная ошибка.


Автор: December 2.2.2003, 03:36
А вот ещё вариант:
keybd_event(VK_SNAPSHOT,0,0,0) - весь экран в буфер обмена
keybd_event(VK_SNAPSHOT,1,0,0) - текущее окно в буфер обмена

Автор: Unregistered 2.2.2003, 04:12
Спасибо. Поюзаю

Автор: [auxx] 2.2.2003, 07:37
Цитата
На строчке

CODE


B.SaveToFile('c:\test.bmp');



фатальная ошибка.


Какая именно: компиляции или времени выполнения(ну или как там они называются)?

Автор: Mikel 4.2.2003, 05:10
Тогда дескриптор присвой ещё одному Canvasу, а затем выполни bitblt, или CopyRect на bitmap.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)