0

ドラッグ アンド ドロップ メニューバー アプリをコーディングしようとしています。ドロップされたファイルにアクセスするためにカスタム ビューを使用しましたが、これは正常に機能します。このビューをクリックしたときにデフォルトのメニューを開きたいと思います。私はこれを使用しています:

- (void)mouseDown:(NSEvent *)event {
   [statusItem popUpStatusItemMenu:statusMenu];
}

現在、mouseDownは正常に動作していますが (NSLog で試しています)、それでもstatusItemstatusMenuにアクセスできません。

これはdropView.mにあり、dropView.hにあります:

@interface dropView : NSView{
    IBOutlet NSMenu *statusMenu;
    NSStatusItem *statusItem;
}

クラッシュもログもありません...何かアイデアはありますか? ティ!

これは.mからもう少しです

- (void)awakeFromNib{
    statusItem = [[NSStatusBar systemStatusBar] statusItemWithLength:NSVariableStatusItemLength];
    [statusItem setMenu:statusMenu];
    dropView *drop = [[dropView alloc] initWithFrame:NSMakeRect(0, 0, 24, 24)];
    [statusItem setView:drop];
}
4

1 に答える 1

0

これを .h ファイルに追加します。

@property (strong, nonatomic) IBOutlet NSMenu *statusMenu;
@property (strong, nonatomic) NSStatusItem *statusItem;

これを .m ファイルに追加します。

@synthesize statusMenu, statusItem;

self.statusMenu次に、 と を使用してプロパティにアクセスしますself.statusItem

于 2012-07-24T14:55:00.363 に答える