我想我会发布一个问题和答案,关于在cocoa app中连续跟踪cocoa中的鼠标位置(在OSX 10.5.8中使用xcode 3.1.4)。
这是一个自我回答的问题,因为我终于弄清楚了,在这里找不到答案,我想我已经设法解决了这个问题
可能有些人可能认为比使用事件点击更容易,而且在10.6中没有屏蔽功能这很容易:)
答案 0 :(得分:1)
继承人我是怎么做到的。
首先,这是我用来设置跟踪区域的代码:
NSTrackingArea* trackingArea = [ [ NSTrackingArea alloc] initWithRect:[ mainWindow frame] options:(NSTrackingMouseMoved | NSTrackingActiveAlways ) owner:self userInfo:nil);
[container addTrackingArea:trackingArea];
当我创建主窗口时,我在设置所有内容时添加此消息:
[window setAcceptsMouseMovedEvents:YES];
并且在我想要捕获事件的类的头文件中(对于我和我创建跟踪区域在同一个类中)我将NSResponder子类化,然后实现我想要捕获的事件,对我来说是的mouseMoved。
-(void) mouseMoved: (NSEvent *) thisEvent
{
NSPoint cursorPoint = [ thisEvent locationInWindow ];
NSLog(@"X coordinate is %f and Y coordinate is %f",cursorPoint.x,cursorPoint.y);
}
希望这有一些帮助:)
谢谢!
答案 1 :(得分:0)
谢谢!我得到了全局鼠标坐标 [NSEvent mouseLocation];