我需要确定鼠标位置是否在 NSView 的矩形内。
我会使用 NSPointInRect(point, rect)
,但我需要将矩形坐标转换为屏幕坐标,但我不确定如何操作。任何帮助将不胜感激!
最佳答案
像这样的东西应该适合你:
NSView* myView; // The view you are converting coordinates to
NSPoint globalLocation = [ NSEvent mouseLocation ];
NSPoint windowLocation = [ [ myView window ] convertScreenToBase: globalLocation ];
NSPoint viewLocation = [ myView convertPoint: windowLocation fromView: nil ];
if( NSPointInRect( viewLocation, [ myView bounds ] ) ) {
// Do your thing here
}
我个人并没有使用这么多局部变量,但希望这能让这个例子更清晰。
关于objective-c - 如何查找鼠标是否在 View 上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4630509/