Как создать приложение меню для Mac



EDIT: это хорошее готовое приложение меню здесь ( источник github) этим ответом.





Мне было интересно, как сделать приложение menubar, каковы требования для этого?



Я видел простое приложение для меню, чтобы открыть ссылки с помощью браузера, я хочу создать что-то подобное этому.



enter image description here



Это приложение, которое я хотел бы сделать похожим.

708   6  

6 ответов:

NSStatusItem это то, что вы ищете. Также добавьте LSUIElement со строковым значением 1 к вашей информации.плист, чтобы скрыть его от Дока.

Я нашел всплывающее окно Codebox чтобы быть отличной отправной точкой. Он созрел для разветвление на Github.

enter image description here

хотя это работает хорошо, они отмечают на своем сайте...

P. S. В Lion Apple добавляет новый класс для popovers, как в iOS. Таким образом, после выпуска OS X 10.7 вам лучше полагаться на native Какао классы, где это возможно. В других случаях всплывающий проект должны оставаться годный.

как Apple добавил NSStatusBarButton свойство NSStatusItem в Yosemite мы можем реализовать приложение menubar намного проще. Я только что создал пример проекта на github.

https://github.com/taichino/PopupTest

BitBar Это приложение на GitHub это может "положить что-нибудь в строке меню Mac OS X".

он запускает оболочку или другие исполняемые скрипты (которые он вызывает Плагины-смотрите множество примеров в репозитории плагинов) и отображает результаты в строке меню. Вы можете написать свой собственный плагин и запустить его, просто добавив его в папку plugins'. Помимо отображения информации, он также может запускать предопределенные сценарии bash в интерактивном режиме из меню плагина вы определяете.

Так как я впервые опубликовал этот ответ, его популярность имеет взорвался (52 участников в настоящее время) и теперь есть даже распространяемая версия, с которой вы можете упаковать свои собственные плагины.

очень простой (неинтерактивный) пример, чтобы показать живую цену биткойна:

enter image description here

FlyCut это еще одно хорошее приложение с открытым исходным кодом, которое делает это. (МТИ лицензия.) Очень удобно тоже, я использую его несколько раз в день.

вот некоторый код, который выглядит как это может быть актуально:

    // Flycut/AppController.h
    IBOutlet NSMenu *jcMenu;

    // Flycut/AppController.m
    statusItem = [[[NSStatusBar systemStatusBar]
            statusItemWithLength:NSVariableStatusItemLength] retain];
    [statusItem setHighlightMode:YES];

    if ( [[DBUserDefaults standardUserDefaults] integerForKey:@"menuIcon"] == 1 ) {
        [statusItem setTitle:[NSString stringWithFormat:@"%C",0x2704]]; 
    } else if ( [[DBUserDefaults standardUserDefaults] integerForKey:@"menuIcon"] == 2 ) {
        [statusItem setTitle:[NSString stringWithFormat:@"%C",0x2702]]; 
    } else {
        [statusItem setImage:[NSImage imageNamed:@"com.generalarcade.flycut.16.png"]];
    }
    [statusItem setMenu:jcMenu];
    [statusItem setEnabled:YES];

Почта Notifr является еще одним открытым исходным кодом меню приложения. Это помогло мне кучу, особенно когда мне нужно было выяснить, как реализовать open on login. Также доступно на App Store.

Comments

    Ничего не найдено.