NSEvent - NSLeftMouseDown

发布于 2024-10-16 09:37:10 字数 220 浏览 7 评论 0原文

我正在尝试使用 NSEvent 和鼠标点击来触发基本功能。例如,按下鼠标左键时关闭窗口。在这个方法中我还需要什么?

谢谢。

 - (void)mouseDown:(NSEvent *)theEvent {

if ([theEvent type] == NSLeftMouseDown){

    [window orderOut:nil];

  }
}

I'm trying to trigger basic functions using NSEvent and mouse clicks. For example close the window when pressing left mouse button. What else do I need in this method?

Thanks.

 - (void)mouseDown:(NSEvent *)theEvent {

if ([theEvent type] == NSLeftMouseDown){

    [window orderOut:nil];

  }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

莫多说 2024-10-23 09:37:10

假设这是在自定义视图中,并且 window 出口已连接(或者当视图添加到超级视图时,您使用 [self window] 填充该变量),这应该就是你所需要的。不过,我建议处理 mouseUp: 而不是 mouseDown:,以便用户有机会通过将鼠标移到视图之外来退出。

您还可以考虑使用 NSButton 而不是自定义视图(或在自定义视图内部)。您可以将其直接连接到窗口的 performClose:orderOut: 操作。

Assuming this is in a custom view and the window outlet is connected (or you fill in that variable with [self window] when the view is added to a superview), that should be all you need. I would suggest handling mouseUp: instead of mouseDown:, though, to give the user the opportunity to back out by moving the mouse outside of your view.

You might also consider using an NSButton instead of (or inside of) a custom view. You could hook it up directly to the window's performClose: or orderOut: action.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文