我正在实现拖放cocoa应用程序,我正在使用NSDraggingSource Protocol中的以下方法:
- (void)draggedImage:(NSImage *)draggedImage movedTo:(NSPoint)screenPoint{
NSPoint以屏幕坐标给出,我需要在窗口或视图坐标中。如果使用NSEvent调用该方法,我可以执行以下操作:
-(void)mouseDown:(NSEvent *)pTheEvent {
NSPoint tvarMouseInWindow = [pTheEvent locationInWindow];
NSPoint tvarMouseInView = [self convertPoint:tvarMouseInWindow fromView:nil]; }
但我无法弄清楚如何只使用NSPoint来做到这一点。提前谢谢!
答案 0 :(得分:12)
查看NSWindow文档,有一个
- (NSPoint)convertScreenToBase:(NSPoint)aPoint
可以让你将点转换为窗口坐标。