Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2008, 01:29   #1
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
Вопрос PrintScreen активной формы

Вот процедура скриншотанья (Фоткает и схораняет в файл):

Код:
Procedure shot(dir:string);
var
  DC: HDC;
  Canva: TCanvas;
  mou:Tpoint;
  B: TBitmap;
begin
  Canva := TCanvas.Create;
  B := TBitmap.Create;
  DC := GetDC(0);
  try
    Canva.Handle := DC;
    with Screen do
    begin
      B.Width := Width;
      B.Height := Height;
      B.Canvas.CopyRect(Rect(0, 0, Width, Height),
      Canva, Rect(0, 0, Width, Height));;
      B.SaveToFile(dir);
    end
  finally
    ReleaseDC(0, DC);
    B.Free;
    Canva.Free
  end
end;
Но дело в том, что оно shot'ит весь экран.
Люди, подскажите, как shot'ать только активную форму?

Полагаю одно: вместо with Screen надо with Активная_форма
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг
Dj_smart вне форума Ответить с цитированием
Старый 22.04.2008, 08:11   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вместо DC := GetDC(0);
пиши DC := GetDC(GetForegroundWindow);
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 22.04.2008, 16:04   #3
Dj_smart
Капсула от спама
Форумчанин
 
Аватар для Dj_smart
 
Регистрация: 04.03.2008
Сообщений: 779
По умолчанию

Большое СПС! Если бы мог, поставил бы +

Блин, облом, оно так неправильно чёто фоткает
Если данный ответ не столь конкретен, как Вы желаете его увидеть, возможно необходимо поразмыслить, стоит ли вопрос того, чтобы о нём спрашивать на форуме?
CncFiles.ru - бесплатный файловый хостинг

Последний раз редактировалось Dj_smart; 22.04.2008 в 16:18.
Dj_smart вне форума Ответить с цитированием
Старый 22.04.2008, 16:25   #4
B_N
Новичок
Джуниор
 
Регистрация: 18.01.2008
Сообщений: 1,720
По умолчанию

http://programmersforum.ru/showthread.php?t=14666
B_N вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обратиться к компоненту Memo, на активной вкладке PageControl dr.Chas Общие вопросы Delphi 11 29.04.2010 17:10
адрес не активной ячейки при вызове функции skachkovgd Microsoft Office Excel 4 06.12.2007 09:50
PrintScreen SERG1980 Общие вопросы Delphi 2 23.08.2007 16:55
Как сделать форму всегда активной? londoner Общие вопросы Delphi 3 04.03.2007 14:44
как сделать так чтобы при открытии второй формы олько она была активной doncova1 Общие вопросы Delphi 2 03.02.2007 19:34