当用户在Dock中的应用程序图标上删除文件时,我可以捕获keyDown事件吗?
例如,如果用户在应用程序图标上删除了一些文件,那就是“method_one”。如果用户在应用程序图标上删除一些文件并按住选项键,则使用“method_two”处理。
此应用程序中的所有“UI”都只是一个停靠图标。没有窗户,面板等 感谢
答案 0 :(得分:1)
您可以使用的一种方法是在应用程序启动时轮询键状态。如果没有先接收事件,NSEvent不提供这样做的方法,但您可以使用CGEvent。正如所讨论的here,您可以创建一个新事件并轮询其修改键。代码段如下所示:
CGEventRef event = CGEventCreate( NULL );
CGEventFlags mods = CGEventGetFlags( event );
if( mods & kCGEventFlagMaskShift )
NSLog( @"Shift key is being pressed" );
CFRelease( event );