|
2 / 2 / 2
Регистрация: 16.02.2014
Сообщений: 153
|
|||||||||||
RAD XE3+ Захват произвольной области экрана на нескольких мониторах (скриншот)17.04.2021, 21:56. Показов 1350. Ответов 9
Здравствуйте!
Пишу простой скриншотер с возможностью захвата произвольной области. Столкнулся с проблемой - не удается реализовать работу программы с несколькими мониторами. В чем выражается проблема: При попытке сделать скриншот на втором мониторе - захватывается область на первом(как будто я сделал захват области на нём). При попытке сделать скриншот на первом экране - Image1 "заливается" белым (прямоугольник выделенной области белого цвета) Сразу приведу фрагменты кода, но на всякий случай приложил архив с проектом(+exe). Кнопка "Сделать скриншот": Кликните здесь для просмотра всего текста
Захват области(+"исправление" прямоугольника выделенной области, если вдруг выделяли "снизу вверх"): Кликните здесь для просмотра всего текста
0
|
|||||||||||
| 17.04.2021, 21:56 | |
|
Ответы с готовыми решениями:
9
Сделать скриншот произвольной области Захват области экрана
|
|
Злостный нарушитель
10656 / 5804 / 1282
Регистрация: 12.03.2015
Сообщений: 26,799
|
|
| 18.04.2021, 00:02 | |
|
Координаты могут быть и отрицательными. Надо работать с объектами TMonitor. Я года 4 назад писал одну прогу для чуваков из столицы одной незалэжной державы, чтоб доказать именно этот факт. Даже видос заснял.
1
|
|
|
2 / 2 / 2
Регистрация: 16.02.2014
Сообщений: 153
|
||||||||||||
| 18.04.2021, 07:36 [ТС] | ||||||||||||
|
Заметил странный момент с координатам окна-оверлея в кнопке "Сделать скриншот" вывожу в мемо инфу:
Координаты до CaptureScreenRect: left = -1920, top = 0 Координаты оверлея в CaptureScreenRect: left = 0, top = 0 Координаты области: left = 2476, top = 250 Координаты после CaptureScreenRect: left = -1920, top = 0 и для второго(он у меня слева): Координаты до CaptureScreenRect: left = -1920, top = 0 Координаты оверлея в CaptureScreenRect: left = 0, top = 0 Координаты области: left = 622, top = 213 Координаты после CaptureScreenRect: left = -1920, top = 0 Почему в CaptureScreenRect нули? по сути же вывожу одни и те же свойства
0
|
||||||||||||
|
Модератор
4149 / 2360 / 812
Регистрация: 15.11.2015
Сообщений: 9,457
|
||
| 18.04.2021, 09:50 | ||
Но прога интересная - взял на изучение.
0
|
||
|
Злостный нарушитель
10656 / 5804 / 1282
Регистрация: 12.03.2015
Сообщений: 26,799
|
|
| 18.04.2021, 09:53 | |
|
0
|
|
|
Модератор
4149 / 2360 / 812
Регистрация: 15.11.2015
Сообщений: 9,457
|
||
| 18.04.2021, 11:14 | ||
|
Verevkin, ты её выкладывал в какой-то теме.
Добавлено через 10 минут
0
|
||
|
Злостный нарушитель
10656 / 5804 / 1282
Регистрация: 12.03.2015
Сообщений: 26,799
|
|
| 18.04.2021, 11:18 | |
|
0
|
|
| 18.04.2021, 12:35 | |
|
0
|
|
|
2 / 2 / 2
Регистрация: 16.02.2014
Сообщений: 153
|
|||||||||||
| 22.05.2021, 03:38 [ТС] | |||||||||||
|
Если в TForm1.FormMouseUp
сделать так:
если я в настройках винды меняю порядок на [1][2](как будто я переставил доп монитор справа), то данное "исправление" не работает(тут у меня не получилось подобрать что и из чего вычитать). Как определять координаты правильные? Не могу понять что и из чего вычитать/складывать Добавлено через 1 час 38 минут омг! неужто осенило!) неужели все так просто было?) Вместо фрагмента из предыдущего сообщения прописал это:
Подскажите пожалуйста - хорошее ли это решение и какие могут быть "подводные камни" при такой реализации? P.S.: правда проверял только меняя настройки мониторов в винде(по другому не знаю как проверить): [1][2] [2][1] [1] [2] [2] [1]
0
|
|||||||||||
| 22.05.2021, 03:38 | |
|
Помогаю со студенческими работами здесь
10
Скриншот области экрана Снять скриншот с области экрана [WPF] Скриншот выделенной области экрана Как сделать скриншот области экрана? Скриншот не всего экрана, а только изменившейся области Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача №1: при указании работ (справочник РаботыПоРемонтуСпецтехники),. . .
|