2010-05-07 39 views

回答

3

假设你是在一个事件响应方法(例如mouseDown:):

[myView convertPointFromBase:[NSEvent mouseLocation]];

1

巴里的回答将工作,但会在函数被调用的时候返回鼠标的位置。

- (void)mouseDown:(NSEvent *)event { 
    NSPoint location = [self convertPointFromBase:[event locationInWindow]]; 
    //Move sprite to location 
} 

这将始终使用鼠标的位置,距离生成事件时:只要该事件处理其产生后不久,但更好的方法是这是确定的。此外,巴里的答案假设窗口和屏幕使用相同的坐标。这通常是正确的,但有时为了安全起见,它更好。

相关问题