我正在使用NSImageView在NSWindow上显示图像。图像将位于用户通常可以拖动窗口的区域顶部。
窗口的样式设置方式使得您可以拖动窗口不容易明显...因此,我需要这个小图像来指示您实际上可以拖动窗口。
不幸的是,我不知道如何点击图像拖动窗口!它需要这个。拖动窗口标题区域中的任何其他位置都可以正常工作。
如何使单击并按住图像拖动整个窗口?
如果您能告诉我如何在将鼠标悬停在此图像上时为鼠标提供"拖动图标"光标,则奖励积分。
我认为最简单的方法是对NSImageView进行子类化,并将YES返回给mouseDownCanMoveWindow(它继承自NSView)。
-(BOOL)mouseDownCanMoveWindow {
return YES;
}
当鼠标进入图像视图时,您可以通过覆盖 NSImageView 子类中的 resetCursorRects 来设置新光标(我不知道您所说的"拖动图标"光标是什么意思,因此此示例使用指向手光标:
- (void)resetCursorRects {
[self addCursorRect:self.bounds cursor:[NSCursor pointingHandCursor]];
}
NSImageView
都有自己的鼠标处理方式。要更改视图的行为方式,您必须对 NSView
或 NSImageView
进行子类化。