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

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

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.05.2015, 21:15   #1
Illusiony
Форумчанин
 
Регистрация: 17.02.2014
Сообщений: 881
По умолчанию Каким способом сделать скриншот участка окна ?

Можно ли это сделать с помощью :
Код:
BitBlt(destBitmap.Canvas.Handle,
            0,
            0,
            destBitmap.Width,
            destBitmap.Height,
            DC,
            //0,
            //0,
            X,
            Y,
            SRCCOPY) ;
?
Меня интересует чтобы вырезать небольшой участок и поместить его в Bitmap, при этом чтобы это было быстрее чем делать целый скриншот, или это невозможно?
Будет ли сделан скриншот быстрее если X,Y будут больше=меньший участок.

Последний раз редактировалось Illusiony; 21.05.2015 в 22:36.
Illusiony вне форума Ответить с цитированием
Старый 22.05.2015, 14:13   #2
саша40
Участник клуба
 
Регистрация: 12.09.2012
Сообщений: 1,030
По умолчанию

Вот справка по функции: http://ic.asf.ru/~/docs/vbapi/b/bitblt.html
Судя по ней надо манипулировать X и Y, а так же шириной и высотой изображения
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби.

Последний раз редактировалось саша40; 22.05.2015 в 14:16. Причина: Исправления
саша40 вне форума Ответить с цитированием
Старый 22.05.2015, 14:19   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
чтобы это было быстрее чем делать целый скриншот, или это невозможно?
В принципе будет. Однако смотря в каких условиях и для чего делать вырезки.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.06.2015, 22:14   #4
ResourceSpace
Форумчанин
 
Аватар для ResourceSpace
 
Регистрация: 30.06.2015
Сообщений: 353
По умолчанию

На всякий случай (чтоб не было глюков в некоторых версиях ОС) необходимо писать SRCCOPY or CAPTUREBLT.

А функция сама поймёт что Dest меньше чем Src и не будет лишнего делать. Просто делайте скрин нужной области и всё.
ResourceSpace вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
программно сделать скриншот области окна и еще niva622 Помощь студентам 10 19.09.2014 12:49
Каким способом имитировать игру ? kakawkin Работа с сетью в Delphi 9 30.07.2012 15:35
Каким способом решить задачу? hammer68 Microsoft Office Access 2 22.12.2011 19:20
каким способом сделат... kenta БД в Delphi 9 01.11.2009 09:07
Каким способом мне это написать? FromHell Помощь студентам 2 17.12.2008 07:57