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

Вниз

GetWindowRect; Скриншот максимизированного окна   Найти похожие ветки 

 
Lexi   (2009-03-31 13:27) [0]

Требуется сохранить скриншот максимизированного окна.

Faq-и, в частности http://delphisite.ru/faq/poluchenie-izobrazheniya-ekrana я читал, но там не учитывается, что у максимизированного окна нет бордюров, а GetWindowRect выдает размер вместе с ними (top, left = -4), в результате чего на скриншот попадает лишнее.
Существует ли какое-то стандартное решение этого вопроса?


 
Lexi   (2009-03-31 14:46) [1]

Пока сделал так, но неужели нет лучшего решения...
     Width := Rect.Right - Rect.Left;
     Height := Rect.Bottom - Rect.Top;
     if IsZoomed(AHandle) then
       begin
       CXS := GetSystemMetrics(SM_CXSIZEFRAME);
       CYS := GetSystemMetrics(SM_CYSIZEFRAME);
       Width := Width - (CXS * 2);
       Height := Height - (CYS * 2);
       end
     else
       begin
       CXS := 0;
       CYS := 0;
       end;

     fBitmap := NewDIBBitmap(Width, Height, pf32bit);
     Result := BitBlt(fBitmap.Canvas.Handle, 0, 0, Width, Height, DC, CXS, CYS, SRCCOPY);


 
DVM ©   (2009-04-01 00:11) [2]


> что у максимизированного окна нет бордюров,

У него есть бордюры и они находятся за краем экрана.


 
Игорь Шевченко ©   (2009-04-01 00:28) [3]


> Требуется сохранить скриншот максимизированного окна.


С заголовком ?



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

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

Наверх




Память: 0.47 MB
Время: 0.053 c
15-1269263611
ocean
2010-03-22 16:13
2010.08.27
Логи ISA 2006


15-1265664604
Юрий
2010-02-09 00:30
2010.08.27
С днем рождения ! 9 февраля 2010 вторник


4-1239166396
Человек
2009-04-08 08:53
2010.08.27
Не правильно работает WM_NCHITTEST на Vista x64


15-1266622204
Юрий
2010-02-20 02:30
2010.08.27
С днем рождения ! 20 февраля 2010 суббота


15-1275780985
re83
2010-06-06 03:36
2010.08.27
Подскажите софт для создания таких эффектов