我认为这应该是一个非常简单的问题,但我无法在文档中找到答案。
我想停止鼠标拖动我自定义nsview子类中(或开始)的事件,导致窗口被拖动到屏幕上。如何告诉窗口保持静止,以便我可以与视图交互而不是拖动整个窗口?感谢。
答案 0 :(得分:4)
除了您是否处理mouseDragged
之外,您可能需要覆盖mouseDownCanMoveWindow
以返回NO,或覆盖isOpaque
以返回YES。
答案 1 :(得分:2)
您需要在视图中实施mouseDragged:
。 As documented,NSView的实现只是将消息传递给下一个响应者,这意味着它将最终命中窗口。 (为什么?请参阅“The Responder Chain” in the Cocoa Event-Handling Guide。)只要您没有调用超类实现,就可以自行响应消息。