Маскирующий виджет QT при захвате экрана
У меня есть приложение Qt 4.8 для Win и Mac, которое захватывает экран.
У меня на рабочем столе виджет QT (всегда сверху), который не должен быть захвачен во время моего захвата. Вместо виджета QT должно быть захвачено приложение / рабочий стол, работающий за QWidget. Пользовательский интерфейс моего приложения QT должен быть скрыт от захвата.
Есть ли способ, которым я могу сделать это?
1 ответ
Главный вопрос: вы управляете снимком экрана или нет? Если вы делаете снимок экрана, это будет выполнимо, но зависит от платформы. Вам нужно получить содержимое всех окон на экране, кроме того, которое вы не хотите видеть, и создать из них скриншот.
Если это стороннее средство захвата экрана, такое как Ctrl-PrtSc в Windows или Grab в OS-X, то вам не повезет, если ОС не предоставит некоторые API, которые позволят вам скрыть виджет.
Желаемая вами функциональность не совсем обычна, поэтому я сомневаюсь, что есть какой-то портативный или даже вменяемый способ достижения того, чего вы хотите.