Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Программно нажимаем Print Screen


- Почему компьютерщику трудно устроится на работу?
- Потому что он не умеет писать. Все на клавиатуре да на клавиатуре.

Приведённая здесь функция делает копию изображения экрана и сохраняет её в буфере обмена (Clipboard). Так же необходимо включить в Ваш проект файл ClipBrd.pas.


procedure SendScreenImageToClipboard;
var
  bmp: TBitmap;
begin
  bmp := TBitmap.Create;
  try
    bmp.Width := Screen.Width;
    bmp.Height := Screen.Height;
    BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
      GetDC(GetDesktopWindow), 0, 0, SRCCopy);
    Clipboard.Assign(bmp);
  finally
    bmp.Free;
  end;
end;

Следующая функция скопирует изображение экрана в в bitmap. Переменная bitmap *должна* быть инициализирована до вызова этой функции.


procedure GetScreenImage(bmp: TBitmap);
begin
  bmp.Width := Screen.Width;
  bmp.Height := Screen.Height;
  BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
    GetDC(GetDesktopWindow), 0, 0, SRCCopy);
end;

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay