Я делаю средство выбора изображения, которое отобразит сетку выбираемой кнопки n на n, когда средство выбора будет открыто. Эта сетка кнопок будет содержаться в NSWindow, но я хотел бы за окно быть близким автоматически, если пользователь нажимает от экрана. Существует ли флаг, который может быть установлен так, чтобы, когда окно освобождает фокус, это было закрыто автоматически?
Есть два уведомления, которые могут вас заинтересовать: NSWindowDidResignKeyNotification
and NSWindowDidResignMainNotification
. Вы можете просто зарегистрироваться в awakeFromNib (или windowDidLoad, если у вас есть пользовательский контроллер), а затем закрыть или скрыть окно, когда вы получите уведомления.
Я не буду углубляться в вопрос, является ли это хорошей идеей с точки зрения пользовательского интерфейса. Но, возможно, лучше иметь либо оверлейный вид, либо панель для описываемой вами функциональности.
.Вы можете проверить NSPanel. Это подкласс NSWindow, который скрывает себя, когда приложение находится в фоновом режиме, и такое поведение звучит очень похоже на то, что вы ищете.
.