Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Основная";
Текущий архив: 2004.08.15;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.026 c
14-1091211885
olookin
2004-07-30 22:24
2004.08.15
Ваше мнение


3-1090240496
Aslan
2004-07-19 16:34
2004.08.15
Как с помощью SQL добавить данные в поле типа Memo?


8-1086150528
крот
2004-06-02 08:28
2004.08.15
Splitter


1-1091436210
MegaVolt
2004-08-02 12:43
2004.08.15
Дайте исходник AnsiReplaceStr из 7 дельфей.


1-1091429169
Eagle8
2004-08-02 10:46
2004.08.15
Хранение данных в ехе





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский