PDA

Просмотр полной версии : [Статья] Пишем простой скриншотер в Delphi


TryCoder
06.07.2013, 18:58
[Ссылки могут видеть только зарегистрированные и активированные пользователи]

Всем привет,недавно задался таким вопросом как-же мне сделать шустрый скриншотер.
Оказывается это так легко:

procedure TForm1.Button1Click(Sender: TObject); // Название вашей кнопки
var
DeskTopDC: HDc;
DeskTopCanvas: TCanvas;
DeskTopRect: TRect;
Bitmap: TBitmap;
begin
DeskTopDC := GetWindowDC(GetDeskTopWindow); // Берём экран
DeskTopCanvas := TCanvas.Create; // Добавляем в работу модуль Canvas
DeskTopCanvas.Handle := DeskTopDC;
DeskTopRect := Rect(0,0,Screen.Width,Screen.Height);
Bitmap := TBitmap.Create; // Это мы делаем формат (в этом случае это Bmp)
with Bitmap do
begin
Width := Screen.Width;
Height:= Screen.Height; // берём высоту и ширину экрана
PixelFormat := pfDevice;
end;
Bitmap.Canvas.CopyRect(DeskTopRect,DeskTopCanvas,D eskTopRect);
Bitmap.SaveToFile ('имяфайла.bmp'); // Сохраняем то что заскринили в файл
Bitmap.Free;
DesktopCanvas.Free;
ReleaseDC(GetDeskTopWindow,DeskTopDC);
end;

Это код кнопки. Вот собственно и всё,тут всё понятно.

источник: trialanet.com

Рэйзор
06.07.2013, 19:20
/kidding
[Ссылки могут видеть только зарегистрированные и активированные пользователи]
"тру погромисты" всегда тырят чужой код без указания авторства? /dgs

TryCoder
06.07.2013, 19:27
"тру погромисты" всегда тырят чужой код без указания авторства? /dgs
Всё осознал... Я исправлюсь! Теперь всегда буду указывать автора!