Как я могу отклонить палитру цветов, которая появляется с NSColorWell

Всплывающее окно HUD в моем приложении включает в себя NSColorWell, так что пользователь может выбрать цвет для данных на графике.

Как только пользователь нажимает кнопку NSColorWell, появляется палитра цветов, и это хорошо. Как только они закончили работу с окном HUD и щелкнули за его пределами, оно автоматически исчезнет, ​​но палитра цветов останется на экране, если они специально не нажмут его красную кнопку закрытия.

Есть ли способ программно отклонить или скрыть палитру цветов, когда мы закончим с ней?

2 ответа

Решение

Используя язык Swift, вы можете сделать это, чтобы закрыть NSColorWell:

NSColorPanel.sharedColorPanel().orderOut(nil)
colorWellReach.deactivate()

Вызовите [[NSColorPanel sharedColorPanel] close]; где вы хотите, чтобы палитра цветов исчезла

Swift 5

NSColorPanel.shared.close()

Другие вопросы по тегам