【问题标题】:Right-click on a NSStatusItem右键单击 NSStatusItem
【发布时间】:2011-01-11 06:50:23
【问题描述】:

我有一个NSStatusItem,我想通过右键单击该项目来弹出一个菜单。我继承了一个 NSView 并覆盖了- (void)rightMouseDown:(NSEvent *)event 方法。我还实现了- (void)mouseDown:(NSEvent *)event 来查看修饰符标志。我的问题是,视图没有收到NSRightMouseDown-Event。我不知道为什么?任何想法如何获得这个事件?自然,我将自定义视图添加到状态项。

- 更新 -
附加信息:我已将 NSImageView 添加到自定义视图的子视图中。

- 更新 2 -
附加信息:它符合NSMenuDelegate 协议。

【问题讨论】:

  • 我很困惑。我刚刚构建了一个简短的测试应用程序,并且能够接收mouseDownrightMouseDown 事件。或许您可以向我们提供更多关于您的NSView 子类设计的信息?

标签: cocoa contextmenu right-click nsstatusitem nsevent


【解决方案1】:

好的。问题解决了。问题是NSImageView。我对它进行了子类化,现在我将所有 mouseDownrigthMouseDown 事件重定向到它的超级视图(我的自定义视图)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-11
    • 2012-11-06
    • 1970-01-01
    • 2020-11-21
    相关资源
    最近更新 更多