6

NSStatusBarのメニューにアクティブなマウントを表示する小さなアプリを開発しています。これまでのところ、次のようになります。

アクティブなマウントを表示するアプリ

各メニュー項目の右側にイジェクトボタンを追加したい(Finderの左側のバーなど)。カスタムビューを作成し、setView:メソッドで設定する必要があることはわかっています。問題は、私がCocoaを初めて使用することであり、現在、カスタムビューのトピックに飛び込む方法がわかりません。実際、私はたくさんのプログラムを作成しましたが、これまでのところインターフェースを操作したことはありません:)。NSMenuItemにカスタムビューを追加するための優れたチュートリアルを持っている人はいますか?

マウントされたアイコンをデスクトップから隠すことができるので、このアプリはとても便利だと思います。問題は、ボリュームをアンマウントするために常にファインダーに戻らなければならないことです...

あなたが持っている助けやヒントをありがとう!

4

1 に答える 1

2

カスタム ビューである必要はありません。標準コントロールのコンテナとして機能する標準 NSView をそのまま使用できます。

初心者にとってトリッキーな部分は、ビューを再利用可能にすることです。対応するビュー nib/xib を持つ独自の NSViewController サブクラスが必要になります (名前ラベルとイジェクト ボタンで設定)。メニュー項目ごとに、XIB ( -initWithNibName:bundle: ) を使用して新しい NSViewController をインスタンス化し、そのオブジェクトをマウント ポイントに設定します。ビュー コントローラのサブクラスには、イジェクト ボタンのクリックに応答したり、ラベルをそのオブジェクトのパスに設定したりするために必要なものがすべて含まれます。

于 2010-07-31T17:16:01.153 に答える