Эта функция на Delphi возвращает растровое изображение экрана (ScreenShot), вместе с изображением курсора. В этой функции на Delphi используются другие функции из нашего Delphi FAQ: ScreenCopy и GetCursorInfoWithIcon.
//делает копию экрана с курсором
function ScreenCopyWithCursor: TBitmap;
var ABitmap: TBitmap; MyCursor: TIcon; CursorInfo: TCursorInfo; IconInfo: TIconInfo; pt: TPoint;
begin
// получаем ScreenShot ABitmap := TBitmap.Create; ABitmap := ScreenCopy;
// создаем иконку, в котрой будем хранить иконку курсора
MyCursor := TIcon.Create;
try
// получаем данные о курсоре CursorInfo := GetCursorInfoWithIcon;
if CursorInfo.hCursor 0 then
begin GetCursorPos(pt); MyCursor.Handle := CursorInfo.hCursor;
// получаем параметры иконки
GetIconInfo(CursorInfo.hCursor, IconInfo);
// рисуем иконку курсора в нужном месте на Скриншоте
ABitmap.Canvas.Draw(pt.X - IconInfo.xHotspot, pt.Y - IconInfo.yHotspot, MyCursor);
end;
finally
// освобождаем память MyCursor.ReleaseHandle; MyCursor.Free;
end;
Result := ABitmap;
end;
Пример использования: …
Image1.Picture.Assign(ScreenCopyWithCursor);
…
Все девушки обожают цветы. И если вы хотите сделать своей любимой приятный сюрприз, то вам пригодится услуга доставка цветов, которую оказывают многие цветочные магазины.