Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.08.22;
Скачать: CL | DM;

Вниз

Не фоткаються полупрозрачные окна   Найти похожие ветки 

 
i-s-v ©   (2004-08-05 17:40) [0]

Вот процедура для снятия снимка рабочего стола. Фоткается прямоугольная область ARect и заносится в Bit. Все вроде просто. Но вот проблема: не фоткаются полупрозрачные окна (AlphaValue). Разные модификации этой процедуры (вместо BitBlt использовать StretchBlt или DesktopCanvas.CopyRect) приводят к тому же результату. Что делать?

procedure CaptureScreenRect(Bit: TBitmap; ARect: TRect);
var
 ScreenDC: HDC;
begin

 with Bit, ARect do
 begin
   Width := Right-Left;
   Height := Bottom-Top;
   Palette := GetSystemPalette;
   ScreenDC := GetWindowDC(GetDeskTopWindow);
   try
     BitBlt(Canvas.Handle, 0, 0, Width, Height,
            ScreenDC, Left, Top, SRCCOPY);
   finally
     ReleaseDC(0, ScreenDC);
   end;
   Palette := GetSystemPalette;
 end;
end;

З.Ы. При нажатии на кнопку PrintScreen все нормально фоткается. Как можно в проге реализовать то, что происходит при нажатии на нее?

Ответы присылайте, пожалуйста, мне на e-mail.


 
Anatoly Podgoretsky ©   (2004-08-05 18:48) [1]

Что случилось с твоим языком, почему так коверкаешь?


 
TUser ©   (2004-08-05 19:19) [2]

Буквально недавно видел. То ли на форуме, то ли в кн. Ф.Юаня. По-моему, все-таки на форму, так что ищи.


 
AndersoNRules   (2004-08-05 21:28) [3]

a kak nascheot najati PrintScreen programno,a potom iz buffera zapisati kuda nado?


 
i-s-v ©   (2004-08-06 18:02) [4]

I>
> Anatoly Podgoretsky

Не знаю. Писал по-скорому...

> AndersoNRules

Наверное так и прийдется сделать...

> TUser

Я этот вопрос уже задавал, но ничего толкового и не увидел... В этот раз, вижу, то же самое...



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

Текущий архив: 2004.08.22;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
14-1091355954
dimon_programmer
2004-08-01 14:25
2004.08.22
Как достать темы для XP, подскажите!


3-1090923336
DeepGray
2004-07-27 14:15
2004.08.22
DBGrid и маски значений.


1-1091526089
BoxTer
2004-08-03 13:41
2004.08.22
Копирование данных через буфер из Excel в DBGrid...


14-1090881129
g-l-u-k
2004-07-27 02:32
2004.08.22
Как скомпилить *.exe


1-1091775212
student__
2004-08-06 10:53
2004.08.22
подсчет секунд