【问题标题】:NSMenuItem's NSView not highlighting in submenuNSMenuItem 的 NSView 未在子菜单中突出显示
【发布时间】:2011-06-06 11:05:33
【问题描述】:

我有一个NSStatusItem,它显示了一个充满NSView 子类的NSMenu。我在NSView 子类中覆盖drawRect: 以在NSMenu 中实现突出显示,并且在根菜单中一切正常,但由于某种原因,它在根菜单的子菜单中不起作用。我在我的NSView 子类drawRect: 中放了一些NSLog 语句,并注意到子菜单中的视图甚至没有被调用。有什么想法吗?

我可以发布我用来突出显示视图的代码,但我认为这没有必要,因为 drawRect: 甚至没有被调用。如果您需要查看任何其他可能有帮助的代码,请告诉我。

【问题讨论】:

  • 您是否将 NSView 子类连接到子菜单视图?
  • 是的,当我点击子菜单中的 NSView 时,仍然会调用 mouseDown:,但不会调用 drawRect:
  • 你的子视图是用NSMenuItemsetView:设置的吗?

标签: objective-c cocoa macos nsview nsmenuitem


【解决方案1】:

你可以使用 NSMenuItem 的 setEnabled 方法来让子菜单项唤醒吗?

【讨论】:

  • 刚刚试过。 drawRect: 仍然没有被子菜单中的项目调用。
【解决方案2】:

问题似乎已经解决了。我可能只是忘记将视图设置为使用我的 NSView 子类。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 2011-10-02
    • 2011-09-04
    • 1970-01-01
    • 1970-01-01
    • 2016-12-15
    相关资源
    最近更新 更多