Полный исходный код модуля
Полный исходный код модуля программы ScreenShot представлен в листинге 4.1.
Листинг 4.1. Модуль программы ScreenShotunit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, Registry, WinProcs, jpeg;
type TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Screen1: TImage;
SaveDialog1: TSaveDialog;
Button3: TButton;
Button4: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1; //главная форма
ВМР1: Graphics.TBitmap; //для работы с рисунками (* .bmp)
DC1: HDC; //простое поле для графики
Image1: TImage;
implementation
{$R *.dfm}
procedure TForm1.ButtonlClick(Sender: TObject);
begin
Form1.Visible:= False; //прячем форму
Sleep(15);//пауза 15 мс
BMP1:= Graphics.TBitmap.Create;
//задаем размеры рисунка такие же как размеры экрана
ВМР1.Height:= Screen.Height;
BMP1.Width:= Screen.Width;
DC1:= GetDC(0);
//Делаем снимок экрана
BitBlt(BMP1.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, DC1, 0, 0, SRCCOPY);
Form1.Visible:= True; //восстанавливаем окно программы
Image1:= TImage.Create(nil);
BMP1.IgnorePalette:= True;
Image1.Picture.Assign(BMP1);
BMP1.SaveToFile('с:\1.bmp'); //сохраняем снимок в файл
//1.bmp на диске С:\
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if SaveDialog1.Execute then
BMP1.SaveToFile(SaveDialog1.FileName) //сохраняем рисунок
else ShowMessage('Файл не был сохранен!');
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
//удаляем рисунок с диска
if FileExists('с:\1.bmp') then DeleteFile('C:\1.bmp');
Screen1.Hide; //скрываем рисунок
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
Screen1.Show; // делаем рисунок видимым
if FileExists('с:\1.bmp') then //если рисунок существует,
Screen1.Picture.LoadFromFile('с:\1.bmp');//загружаем его
end;
end.
#8858; Все файлы проекта и исполняемый файл рассмотренной программы находятся на прилагаемом к книге компакт-диске в папке Chapter04.