如何检测状态栏图标上的左击或右击,然后根据单击的鼠标按钮(触摸板)进行一些操作?
我使用:
_statusItem = [[[NSStatusBar systemStatusBar] statusItemWithLength:NSSquareStatusItemLength] retain];
[_statusItem setMenu:menu];
[_statusItem setHighlightMode:YES];生成statusBar图标的步骤
发布于 2009-12-10 23:07:26
要检测当前按下的鼠标按钮,可以使用[NSEvent pressedMouseButtons]。
要检测正在单击的状态栏图标,可以检测出现的菜单。在菜单打开之前,它会向它的代理(如果有的话)发送一条menuWillOpen:消息。所以实现类似这样的东西:
- (void)menuWillOpen:(NSMenu *)menu
{
NSLog(@"%d",[NSEvent pressedMouseButtons]);
}您还需要设置菜单的委托,例如通过
[menu setDelegate:self];https://stackoverflow.com/questions/1878912
复制相似问题