- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以,我有这个 mouseEntered 事件,如果我鼠标进入跟踪区域,该事件将使标签可见。但是,根据输入的跟踪区域,我想为标签设置自定义字符串。
主要问题是:如何获取输入的跟踪区域。
这是我的代码:
-(void)mouseEntered:(NSEvent *)theEvent
{
if([theEvent trackingArea] isEqual: -- to my trackingArea --)
{
[self.label setStringValue:@"Test"];
}
}
最佳答案
听起来像 Spaghetti code 的开头对我来说..
即:检查一个 View 是否由另一个 View 触发某些内容 - 我想您正在尝试实现某种在线帮助系统,并为各种 View /控件显示一些文本。在这种情况下,您可能很容易得到一个巨大的 if-then-else block 和数十个需要检查的 View 。
无论如何,我建议使用不同的方法并拥抱 loose coupling在您的代码中:
让实际拥有跟踪区域的 View 发送一条通知,其中包含它希望其他人显示的字符串怎么样?
这样 View 就不需要彼此了解,不需要设置实例变量来指向彼此,等等 - 只是有人发送而其他人会监听的通知。
干净、可维护、易于扩展。
关于objective-c - 如何比较NSEvent的trackingArea来查看哪个trackingArea触发了 "theEvent",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21003113/
如何区分事件 -(void)scrollWheel:(NSEvent *)event 是由 Magic Mouse 还是触控板触发的? 我问这个问题的原因是因为我想在使用触控板时为滚动事件分配不同的操
我正在尝试使用 NSEvent 和鼠标单击来触发基本功能。例如,按下鼠标左键时关闭窗口。在这个方法中我还需要什么? 谢谢。 - (void)mouseDown:(NSEvent *)theEvent
在 Mac OS X 10.6 中,NSEvent 有一个 +modifierFlags 类方法来确定当前按下的修饰符标志。在 10.5 中,使用 [[NSApp currentEvent] modi
我正在尝试创建鼠标按下事件,但在“override func mouseDown( theEvent: NSEvent!) { ”行中不断收到错误“使用未声明的类型‘NSEvent’”。在研究和尝试不
感谢您花时间阅读本文。我是 JavaFX 的新手,在我的编译器中有一个奇怪的错误,我想了解一下。 这是错误: 2018-09-13 19:09:36.387 java[8040:660455] unr
下面是我的简单 AppDelegate.swift 类。 // AppDelegate.swift import Cocoa @NSApplicationMain class AppDelegate
我正在编写一个简单的 Mac 应用程序,旨在在用户单击鼠标按钮时在后台运行并执行某些操作。该应用程序是使用 PyObjC 用 Python 编写的。我正在使用 addGlobalMonitorForE
当我按 ^ 或 `,然后按 a 或 e 时,我只得到 a 或 e 而不是 â 或 é。 这是我的代码: - (void) keyDown:(NSEvent*)event { NSString* s
我创建了一个 NSEvent 并且我想发布它。我怎样才能做到这一点? 它是一个 NSSystemDefined 类型,我想将其发布到全局范围内。基本上是一些 IOHIDPostEvent 或 CGEv
在 Cocoa 中,您可以重写某些类中的 keyDown(event:NSEvent) 方法,以便在用户按下某个键时收到通知。在大多数情况下,事件将包含按键代码和按下的字符等。但是,如果您在美式扩展键
好的,我了解如何从 NSEvent 确定是否按下了修饰键: if ([theEvent modifierFlags] & NSAlternateKeyMask) { // The Op
问候语:Instruments 告诉我 viewDidLoad 中的两个 addLocalMonitor 调用存在内存泄漏(每个 3 字节)。我很高兴看到我的错误以及为什么(可能)泄漏。非常感谢任何帮
我使用以下代码处理键盘上字母键的按下。 NSEvent.addGlobalMonitorForEvents(matching: NSEvent.EventTypeMask.keyDown) { eve
我创建了一个 NSTrackingArea 并在 userInfo 参数中传递了一个字典。 let trackingData = ["section": 1, "sectionRow": 12, "d
我在监听事件时遇到问题,我可以监听完美运行的事件,但我无法让它停止监听事件。我研究了一段时间,想出了一个方法,+ (void)removeMonitor:(id)eventMonitor,它说我应该在
我正在尝试以编程方式在 cocoa 应用程序中为我的用户按住选项键。 在我的一生中,我似乎无法捕获 NSEVENT 修改它并重新发布它。我仍然想捕获 MouseDown 事件,因为我使用该位置 - 我
@property(readonly) NSTimeInterval timestamp; 表示自系统启动以来事件发生的时间(以秒为单位)。我想比较两个事件的时间戳,但它们的差异也可能以毫秒为单位。那
您好,我正在创建一个 os x 应用程序,并尝试为其添加远程接口(interface)。为此,我需要能够将鼠标向下和鼠标向上命令发送到我的应用程序的窗口。 我找到了可以成功执行此操作的代码,如下所示:
我想使用 NSPropertyListSerialization 编码 NSEvent,但 NSPropertyListSerialization 只接受 NSData、NSString、NSArra
我的应用程序使用事件点击来捕获键盘事件,我想知道每个事件来自哪个设备(即哪个键盘)。是否存在某种设备识别信息以及点击获取的 CGEvent?我查看了 NSEvent 的方法和各种 CGEventFie
我是一名优秀的程序员,十分优秀!