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

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

← →
i-s-v ©   (2004-08-01 13:34) [0]

Добрый день, мастера. Помогите!
Вот процедура, которая фоткает прямоугольную область ARect экрана и заносить скопированное в Bit. Вроде все просто... Проблема: не снимаются полупрозрачные окна под ХРюшею. Что делать?

procedure CaptureScreenRect(Bit: TBitmap; ARect: TRect);
var
 ScreenDC: HDC;
begin
 with Bit, ARect do
 begin
   Width := Right-Left;
   Height := Bottom-Top;
   ScreenDC := GetDC(0);
   try
     BitBlt(Canvas.Handle, 0, 0, Width, Height,
            ScreenDC, Left, Top, SRCCOPY);
   finally
     ReleaseDC(0, ScreenDC);
   end;
   Palette := GetSystemPalette;
 end;
end;


← →
i-s-v ©   (2004-08-01 16:12) [1]

Ну что, никто не знает?


← →
Timedrops ©   (2004-08-01 16:20) [2]

вот так попробуй
ты копируешь ф-цией BitBlt
а в этом примере Canvas.CopyRect

procedure TScrnFrm.GrabScreen;
var
 DeskTopDC : HDc;
 DeskTopCanvas : TCanvas;
 DeskTopRect: TRect;
begin
 DeskTopDC := GetWindowDC(GetDeskTopWindow);
 DeskTopCanvas := TCanvas.Create;
 DeskTopCanvas.Handle := DeskTopDC;
 DeskTopRect := Rect(0,0,Screen.Width,Screen.Height);
 // Отображение рабочего стола на экранную форму с именем ScrnForm
 ScrnForm.Canvas.CopyRect(DeskTopRect,DeskTopCanvas,DeskTopRect);
 ReleaseDC(GetDeskTopWindow,DeskTopDC);
end;


← →
GetWindowDC   (2004-08-01 16:21) [3]

Попробуй  GetWindowDC. GetDC возвращает клиентскую область, а  GetWindowDC - полностью окно.


← →
GetWindowDC   (2004-08-01 16:23) [4]

Извиняйте, опоздал:)


← →
i-s-v ©   (2004-08-02 11:28) [5]

Спасибо, попробую


← →
i-s-v ©   (2004-08-02 12:40) [6]

Не, люди, не получается... Canvas.CopyRect аналогична StretchBlt... Как угодно уже пробовал...


← →
i-s-v ©   (2004-08-02 12:41) [7]

Не, люди, не получается... Canvas.CopyRect аналогична StretchBlt... Как угодно уже пробовал...


← →
i-s-v ©   (2004-08-04 02:53) [8]

NEED HELP!!!!



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

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



Память: 0.46 MB
Время: 0.02 c
3-1090481956
serg128
2004-07-22 11:39
2004.08.15
Как в вычислимом (Calculated) поле задать маску отображения чисел


14-1091002996
ИМХО
2004-07-28 12:23
2004.08.15
Куда деть 9 баксов?


6-1087045291
Никита
2004-06-12 17:01
2004.08.15
Подключение к интернету при помощи Delphi


9-1083242798
HardPac
2004-04-29 16:46
2004.08.15
Hard-Pac (скриншоты в догонку)


14-1091005132
ИМХО
2004-07-28 12:58
2004.08.15
"Большая перемена"




   Наверх