我有一个NSView
,我将其添加为另一个NSView
的子视图。我想要能够拖动第一个NSView
在父视图中移动。我有一些部分工作的代码,但是NSView
沿Y轴的移动方向与我的鼠标拖动相反。(例如,我向下拖动,它向上移动,反之亦然)。
这是我的代码:
// -------------------- MOUSE EVENTS ------------------- \\
- (BOOL) acceptsFirstMouse:(NSEvent *)e {
return YES;
}
- (void)mouseDown:(NSEvent *) e {
//get the mouse point
lastDragLocation = [e locationInWindow];
}
- (void)mouseDragged:(NSEvent *)theEvent {
NSPoint newDragLocation = [theEvent locationInWindow];
NSPoint thisOrigin = [self frame].origin;
thisOrigin.x += (-lastDragLocation.x + newDragLocation.x);
thisOrigin.y += (-lastDragLocation.y + newDragLocation.y);
[self setFrameOrigin:thisOrigin];
lastDragLocation = newDragLocation;
}
视图是翻转的,尽管我已将其更改回默认设置,但似乎没有任何区别。我做错了什么?