Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在尝试使用 NSEvent 和鼠标单击来触发基本功能。例如按下鼠标左键时关闭窗口。在这种方法中我还需要什么?
谢谢。
- (void)mouseDown:(NSEvent *)theEvent { if ([theEvent type] == NSLeftMouseDown){ [window orderOut:nil]; } }
假设这是在自定义视图中并且window插座已连接(或者您在将视图添加到超级视图时填充该变量[self window]),这应该是您所需要的。不过,我建议处理mouseUp:而不是mouseDown:,让用户有机会通过将鼠标移到视图之外来退出。
window
[self window]
mouseUp:
mouseDown:
您也可以考虑使用 NSButton 代替(或在其中)自定义视图。您可以将其直接连接到窗口performClose:或orderOut:操作。
performClose:
orderOut: