MacOS создает ProgressBar на StatusBar - PullRequest
0 голосов
/ 20 мая 2018

Я ищу способ поместить ProgressBar в строку состояния Mac в качестве кнопки.Я хочу иметь что-то вроде этого:

Sample Image

или

enter image description here

Что я могу сделать, это:

    let statusItem = NSStatusBar.system.statusItem(withLength:NSStatusItem.variableLength)

    [...]

    if let button = statusItem.button {
                button.image = NSImage(named:NSImage.Name("JustSomeImage"))
                button.title = "Hello"
                button.action = #selector(togglePopover(_:))

            }

Но с NSStatusItem я ограничен использованием только кнопки и объекта меню для манипулирования моим NSStatusBar.Так что все, что я могу сделать, это поместить изображение на панель с текстом.Я много искал решение и читал документацию, но я не мог найти способ как-нибудь разместить там ProgressBar.У кого-нибудь есть идеи, как я могу это сделать?

1 Ответ

0 голосов
/ 20 мая 2018

Поскольку NSButton является подклассом NSView, вы можете добавить любое представление, которое хотите добавить.Ниже вы можете найти небольшой фрагмент кода в Objective C, но нетрудно превратить его в Swift.

NSProgressIndicator *indicator = [[NSProgressIndicator alloc] initWithFrame:button.frame];
[button addSubview:indicator];

С наилучшими пожеланиями и большого успеха.

...