Вниз
Скачать: 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.021 c
4-1089118392
Wistler
2004-07-06 16:53
2004.08.15
Работа с пользователями в домене WinNT


3-1090329688
Andrew
2004-07-20 17:21
2004.08.15
UpdateSql + тригеры: Как их "подружить"?


1-1091533107
Sectey
2004-08-03 15:38
2004.08.15
Список методов у объекта


14-1091023259
}|{yk
2004-07-28 18:00
2004.08.15
Вот уроды!


1-1091159228
Zak3D[@Tm]
2004-07-30 07:47
2004.08.15
Сократить размер приложения




   Наверх