Вниз
Скачать: CL | DM;

Скриншот произвольной области   Найти похожие ветки 

← →
qpash ©   (2014-10-29 14:23) [0]

Добрый день всем, подскажите пожалуйста, почему функция снятия скриншота произвольной области экрана не работает на Delphi XE4 в приложенном исходнике (на 7-й Delphi работает отлично)

Исходник взят из
http://delphiexpert.ru/sozdanie-skrinshotera-na-delphi.html


← →
brother ©   (2014-10-29 14:38) [1]

> не работает на Delphi XE4

что "говорит"?

из исходников:
Sleep(750);  // ждем немного, чтобы приложение успело скрыться
ересь...


← →
qpash ©   (2014-10-29 14:46) [2]

В 7-й Delphi нажимая на кнопку "Произвольная область" можно выбрать мышью диапазон в прямоугольнике и он благополучно попадает в первой форме в Timage, но в Delphi XE3 или 4 в Timage скриншот не попадает и ошибки при этом нет


← →
qpash ©   (2014-10-29 14:50) [3]

Sleep(750);
ставил в разные места, все-равно не работает


← →
qpash ©   (2014-10-29 14:52) [4]

Наоборот убрал Sleep(750);
Но все-равно не пашет


← →
Rouse_ ©   (2014-10-29 19:42) [5]

ибо with зло первостатейное!

перепиши вот так:

function CaptureScreenRect(aRect: TRect): TBitMap;
var
 ScreenDC: HDC;
begin
 Result := TBitMap.Create;
 Result.Width := aRect.Right - aRect.Left;
 Result.Height := aRect.Bottom - aRect.Top;
 ScreenDC := GetDC(0);
 try
   BitBlt(Result.Canvas.Handle, 0, 0, Result.Width, Result.Height, ScreenDC, aRect.Left, aRect.Top, SRCCOPY);
 finally
   ReleaseDC(0, ScreenDC);
 end;
end;


← →
Rouse_ ©   (2014-10-29 19:45) [6]

Да и работает не правильно, у меня два монитора, основной справа, второстепенный слева, полный экран берется только с основного - а почему?

Ну и соответственно на второстепенное окно не рассчитан вывод второй формы, посредством которой снимается произвольная область.

Так себе поделка, в итоге.


← →
Eraser ©   (2014-10-30 03:29) [7]


> GetDC(0);

лютое зло )

CreateDC(PChar("DISPLAY"), nil, nil, nil);


← →
qpash ©   (2014-10-30 06:39) [8]

Спасибо, все получилось!


← →
Rouse_ ©   (2014-10-30 19:29) [9]


> Eraser ©   (30.10.14 03:29) [7]

А в чем цимус?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.036 c
15-1411762264
MsGuns
2014-09-27 00:11
2015.09.10
Тризна по Книге


15-1412178807
Fox
2014-10-01 19:53
2015.09.10
Задача по математике за 3й класс


2-1396405670
Drowsy
2014-04-02 06:27
2015.09.10
TDUPM


2-1395359190
alexdn
2014-03-21 03:46
2015.09.10
ComboBox


15-1412769216
Fox
2014-10-08 15:53
2015.09.10
Преферанс




   Наверх