【发布时间】:2017-01-21 16:31:45
【问题描述】:
我有一个自定义的NSButton 类,并想检查(在viewWillDraw 内)用户当前的鼠标位置是否在按钮框架内。
我使用NSEvent.mouseLocation() 获取鼠标位置,但这给了我一个相对于屏幕本身的绝对 NSPoint。
self.frame (= NSButton.frame) 而是返回一些相对坐标,指的是按钮超级视图。
因此,self.frame.contains(NSEvent.mouseLocation()) 不起作用,我不知道如何解决!
感谢任何帮助!
【问题讨论】:
-
您可以尝试将鼠标位置转换为按钮框架。在 ios 中,uiview 具有将点从一个视图转换为其他视图的方法,反之亦然。
-
@Dasem 感谢您的回复!无法弄清楚如何。
NSButton不是视图。
标签: swift mouseevent frame nsevent nspoint