gpt4 book ai didi

cocoa - 如何使用 NSTrackingArea

转载 作者:行者123 更新时间:2023-12-03 16:03:41 31 4
gpt4 key购买 nike

我是 Mac 编程新手,我想在光标进入或退出主窗口时触发事件。我读了一些有关 NSTrackingArea 的内容,但我不明白到底该怎么做。

最佳答案

Apple 提供了 NSTrackingAreas 的文档和示例.

跟踪鼠标进入或退出窗口的最简单方法是在窗口的 contentView 中设置跟踪区域。但是,这不会跟踪窗口的工具栏

作为一个简单的示例,在自定义内容 View 的代码中:

- (void) viewWillMoveToWindow:(NSWindow *)newWindow {
// Setup a new tracking area when the view is added to the window.
NSTrackingArea* trackingArea = [[NSTrackingArea alloc] initWithRect:[self bounds] options: (NSTrackingMouseEnteredAndExited | NSTrackingActiveAlways) owner:self userInfo:nil];
[self addTrackingArea:trackingArea];
}

- (void) mouseEntered:(NSEvent*)theEvent {
// Mouse entered tracking area.
}

- (void) mouseExited:(NSEvent*)theEvent {
// Mouse exited tracking area.
}

您还应该实现 NSView 的 updateTrackingAreas 方法并测试事件的跟踪区域以确保它是正确的。

关于cocoa - 如何使用 NSTrackingArea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4639379/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com