鼠标移动和视图控制器

Posted

技术标签:

【中文标题】鼠标移动和视图控制器【英文标题】:Mouse Move and ViewController 【发布时间】:2016-02-02 08:49:10 【问题描述】:

为了理解基本概念,我开发了一个简单的 Mac OS X 应用程序来计算分形。该应用程序是一个简单的窗口应用程序,有一个计算分形的类,以及一个包含以下内容的窗口:

    用于显示图像的自定义视图。 一些用于选择计算参数的控件。这些控件是 与 appdelegate 连接。

一切正常,但是:

    我希望当鼠标悬停在带有图像的视图上时, 一些文本字段实时报告坐标。我必须做什么 要做到这一点吗? 我想我已经与应用程序委托建立了连接 不是最好的解决方案。

定义一个自定义视图控制器更好吗?如果是这样,我该如何使用界面构建器来引入自定义视图控制器?

【问题讨论】:

尝试以更易读的方式格式化这个问题。也许一些点的枚举列表,如“1)”或“A)”是个好主意。 【参考方案1】:

您可以只跟踪鼠标事件 MouseMoved

https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/EventOverview/HandlingMouseEvents/HandlingMouseEvents.html#//apple_ref/doc/uid/10000060i-CH6-SW1

那么你也许可以这样做:

NSPoint location = [renderView convertPoint:[theEvent locationInWindow] fromView:nil];

然后您将获得相对于包含图像的视图的 X 和 Y。

请注意阅读苹果文档,否则您可能会错过以下内容:

注意:因为鼠标移动事件发生得如此频繁,以至于它们可以 快速淹没事件调度机制,一个 NSWindow 对象 默认不从全局 NSApplication 对象接收它们。 但是,您可以通过发送 NSWindow 对象 setAcceptsMouseMovedEvents: 带有 是的论点。

【讨论】:

非常感谢!工作正常,但我必须添加一个新的 ViewController。

以上是关于鼠标移动和视图控制器的主要内容,如果未能解决你的问题,请参考以下文章

用键盘怎么移动鼠标

角色控制器wasd移动

角色控制器wasd移动

js怎么控制鼠标移动范围

rightBarButtonItem 添加segue

用VBS控制鼠标(获取鼠标坐标鼠标移动鼠标单击鼠标双击鼠标右击)