8
インタフェースビルダーのNSCollectionViewにメニューをバインドしました。しかし、Ctrl +クリック(右クリック)するとメニューが表示されません。NSCollectionViewはコンテキストメニューをポップアップしませんか?
NSCollectionViewサブクラスにいくつかのメソッドを追加しようとしました。それらのどれもが呼び出されていない:
+ (NSMenu*)defaultMenu
- (NSMenu *)menuForEvent:(NSEvent *)theEvent
- (void)rightMouseDown:(NSEvent *)theEvent
- (void)sendEvent:(NSEvent *)theEvent
呼び出される唯一の方法は次のとおりです。
- (NSView *)hitTest:(NSPoint)aPoint
NSCollectionViewは、マウスイベントを受け取ることを意味しています。
また、NSCollectionViewItemのサブクラスに同じメソッドを追加しようとしましたが、結果は同じです。 hitTest:
のみが呼び出されます。
mouseDownメソッドが呼び出されましたが、メニューはポップアップしません。しかし、私はあなたの答えを得ることはできません:スーパークラスメソッドをカスタムコードでオーバーライドしました。違いは何ですか? – aneuryzm
私は、あなたの問題はマウスタウンが呼び出されないと思っていました。呼び出されると、コンテキストメニューを表示するのが簡単になるはずです。私は1分で私の答えを更新します –
私は、大丈夫感謝を参照してください。しかし、これは回避策です、そうですか?自動的にポップアップするはずです。 – aneuryzm