NSWindow, как не быть частью скриншота? - PullRequest
0 голосов
/ 27 апреля 2011

Приложение My Cocoa отображает прозрачное окно на экране, но когда пользователь пытается сделать снимок экрана, используя встроенную в Mac OS X клавишу захвата экрана с возможностью выбора полного окна (Command-Shift-4, затем пробел), мое окно подсвечивается как часть возможных окон для захвата.

Как я могу сказать моему окну или приложению не разрешать это?Мое окно уже отказывается быть главным окном или ключевым окном, и через -canBecomeKeyWindow и -canBecomeMainWindow оба возвращают NO, но это все равно происходит.

Окно также находится в NSModalPanelWindowLevel, и NSScreenSaverWindowLevel делаетто же самое.

1 Ответ

1 голос
/ 30 апреля 2011

Обратите внимание, что каждое окно имеет право на скриншоты, даже рабочий стол, док-станция и строка меню, которые являются специальными окнами.Вы даже можете сделать скриншот самого окна наложения Exposé.Это заставляет меня поверить, что нет никакого способа сделать это.

Полагаю, вы могли бы перехватить событие клавиши Command + Shift + 4 и скрыть окно, но эта комбинация клавиш определяется пользователем, поэтомуВозможны изменения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...