【发布时间】:2009-06-03 02:48:33
【问题描述】:
当在菜单栏中单击实际按钮而不是在下拉菜单中显示或隐藏窗口时,如何制作状态项? 抱歉,如果这有点模糊。
【问题讨论】:
标签: objective-c cocoa menuitem
当在菜单栏中单击实际按钮而不是在下拉菜单中显示或隐藏窗口时,如何制作状态项? 抱歉,如果这有点模糊。
【问题讨论】:
标签: objective-c cocoa menuitem
NSStatusItem 像许多其他控件一样支持目标/动作机制。我自己没有用过这个——我只用过带有菜单的NSStatusItem——所以我不知道何时发送消息(即当鼠标按钮是单击或释放时)。如果默认情况下它不符合您的要求,您将需要一个像 Daniel 建议的自定义视图。
【讨论】:
要使用 NSStatusItem 实现这一点,您需要创建一个自定义视图并通过调用其“setView:”方法替换默认的 NSStatusItem 视图。
您将在自定义视图中实现代码以响应鼠标点击,例如放一扇窗户。 (如果最适合您,您可以使用按钮或其他标准视图)。
我会警告你,这有点棘手。很多细微差别,例如让您的自定义视图在菜单栏中看起来正确。但是,如果您想覆盖默认的菜单提示状态项视图,这是您需要采取的一般方法。
【讨论】: