編集: これは、この回答による素敵な既製のメニューバー アプリケーションです( github ソース) 。
メニューバー アプリケーションを作成する方法を知りたいのですが、そのための要件は何ですか?
ブラウザを使用してリンクを開くというメニューバーの簡単なアプリケーションを見ました。それに似たものを作成したいと思います。
これは私が似たようなものにしたいアプリケーションです。
編集: これは、この回答による素敵な既製のメニューバー アプリケーションです( github ソース) 。
メニューバー アプリケーションを作成する方法を知りたいのですが、そのための要件は何ですか?
ブラウザを使用してリンクを開くというメニューバーの簡単なアプリケーションを見ました。それに似たものを作成したいと思います。
これは私が似たようなものにしたいアプリケーションです。
NSStatusItemはあなたが探しているものです。また、文字列値が 1 の LSUIElement を Info.plist に追加して、Dock から非表示にします。
Codebox の Popupが素晴らしい出発点であることがわかりました。Githubでフォークする機は熟しています。
それはうまく機能しますが、彼らは自分のサイトに注意しています...
PS Lion では、Apple は iOS のようなポップオーバー用の新しいクラスを追加しています。したがって、OS X 10.7 がリリースされた後は、可能な場合はネイティブの Cocoa クラスに依存することをお勧めします。それ以外の場合、Popup プロジェクトは引き続き使用できるはずです。
BitBarは、 「Mac OS X のメニュー バーに何でも入れる」ことができるGitHubのアプリケーションです。
シェルまたはその他の実行可能スクリプト (プラグインと呼ばれます- プラグイン リポジトリの多くの例を参照) を実行し、結果をメニュー バーに表示します。独自のプラグインを作成し、'Plugins フォルダー' に追加するだけで実行できます。情報を表示するだけでなく、定義済みのプラグイン メニューから事前定義された bash スクリプトをインタラクティブに実行することもできます。
この回答を最初に投稿して以来、その人気は爆発的に高まり(現在 52 人の貢献者)、独自のプラグインをパッケージ化できる配布可能なバージョンさえあります。
ライブ ビットコイン価格を表示する非常に単純な (非対話型) 例:
NSStatusBarButton
Apple が Yosemite にプロパティを追加したのでNSStatusItem
、メニューバー アプリをより簡単に実装できます。github にサンプル プロジェクトを作成しました。
FlyCutは、これを行うもう 1 つの優れたオープン ソース アプリケーションです。(MIT ライセンス) 非常に便利で、1 日に数回使用しています。
関連する可能性があると思われるコードを次に示します。
// 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];