gpt4 book ai didi

macos - 鼠标离开 NSWindow 实例的事件

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

是否有一种机制可以检测鼠标何时离开事件的 NSWindow 边界?

我已经尝试重写 mouseMoved: 方法,但当鼠标位于 NSWindow 边界之外时,不会调用该方法。

最佳答案

最好是使用NSTrackingArea

- (void)configureTrackingArea
{
NSRect trackingRect = self.window.contentView.frame
NSTrackingAreaOptions trackingOptions = NSTrackingMouseEnteredAndExited | NSTrackingActiveInKeyWindow;
NSTrackingArea *trackingArea = [[NSTrackingArea alloc] initWithRect:trackingRect options:trackingOptions owner:self userInfo:nil];

NSView *contentView = [[self window] contentView];
[contentView addTrackingArea:trackingArea];
}


- (void)mouseEntered:(NSEvent *)event
{
[[self window] addChildWindow:[self previewWindow] ordered:NSWindowAbove];
}

- (void)mouseExited:(NSEvent *)event
{
[self hidePreviewWindow];
}

关于macos - 鼠标离开 NSWindow 实例的事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54737939/

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