Есть ли способ программно скрыть приложение углерода на OSX? - PullRequest
0 голосов
/ 17 января 2009

У меня есть углеродное приложение C ++, и я хотел бы программно сделать эквивалент Command-H (чтобы скрыть приложение), который доступен в меню приложения для моего приложения. Я исследовал углеродный API для TransitionWindow и HideWindow, и хотя они могут скрывать мое окно, они не делают эквивалента Command-H. Я посмотрел ссылку на AppleEvent, которая мне понадобилась для создания AppleEvent, но я не нашел ее для приложения скрытия. Есть мысли?

Ответы [ 4 ]

1 голос
/ 21 марта 2009

Вы также можете отправить событие команды kHICommandHide ('hide') из Carbon Event Manager (что и делает этот пункт меню и которое вызывает ShowHideProcess () при обработке), если вы предпочитаете, например, если хотите это действие должно быть материализовано событием.

1 голос
/ 17 января 2009

Просто примечание: скрытие окна очень отличается от скрытия приложения.

1 голос
/ 17 января 2009

Извините, что отвечаю на мой вопрос, но API ShowHideProcess (), кажется, делает то, что я хочу. Если есть лучшие решения, я бы с удовольствием их услышал.

0 голосов
/ 17 января 2009

Я посмотрел ссылку на AppleEvent, которая мне понадобилась для создания AppleEvent, но я не нашел ее для приложения скрытия. Есть мысли?

Я не эксперт, но вы можете просто использовать AppleEvent, чтобы установить для свойства visible процесса значение false - по крайней мере, оно работает с AppleScript

tell application "System Events"
    set visible of process "xyz" to false
end tell

С другой стороны, ваш API кажется наиболее прямым способом, и приведенный выше код, вероятно, просто использует его.

...