У меня есть простая задача с анимацией NSWindow, но до сих пор не удается найти способ выполнить это.Скрыть часть NSWindow (анимация)
У меня есть окно, которое я хочу скрыть, анимируя его за пределы экрана. Но с подключенными 2 дисплеями мое окно просто перемещается на второй монитор.
Есть ли способ сделать некоторые обрезки для окна, которое будет нарисовано только в области прямоугольника основного экрана?
Я не нашел ничего подобного в документах Apple. И я знаю, что некоторые эффекты пользовательского интерфейса достигаются путем создания трюков для имитации желаемого поведения. Любая информация очень ценится!
Мое первое предположение заключалось в создании нового окна со вторичным снимком содержимого экрана. А затем переместите мое главное окно под этим снимком. Но это плохо - контент на экране может оживить (например, видео).
Спасибо @Peter! Ваш ответ очень подробный. Я принимаю это, потому что многие пользователи найдут его очень полезным. Но я нашел лучшее решение для своего случая: вместо решения проблемы рисования я лучше переключу свое окно на самый левый/верхний/правый экран. Я вижу, что все другие приложения, которые скрываются от экрана, реализуют один и тот же подход. Но спасибо большое! – UJey
@UJey: Что вы подразумеваете под «переключением моего окна на самый левый/верхний/правый экран»? Разве это не проблема, которую вы пытались решить? –
, когда у вас есть 2 экрана, у вас всегда есть край, который лежит между экранами. И это была позиция моего окна - на основном дисплее, но между экранами. Это вызывало проблемы с видимостью окна на другом дисплее. Теперь, допустим, мой вторичный экран находится справа от основного. И мое окно должно скрываться за правой границей экрана. Поэтому я говорю, что я переместил мое окно на правый край самого правого (вторичного) экрана вместо того, чтобы быть расположенным на правой границе основного экрана. Ах, мои слова в замешательстве, но я думаю, у вас есть идея. – UJey