Cocoa NSSavePanel句柄操作
简单问题: 我想处理NSSavePanel中按下的取消按钮的操作。我将面板与委托类一起使用:Cocoa NSSavePanel句柄操作,cocoa,nssavepanel,Cocoa,Nssavepanel,简单问题: 我想处理NSSavePanel中按下的取消按钮的操作。我将面板与委托类一起使用: NSSavePanel *save = [NSSavePanel savePanel]; [save setDelegate:self]; [save runModal]; 我在文件上看到: 好: 当用户单击面板的“确定”按钮时,将调用此操作方法 (iAction)确定:(id)发送方 但我不知道如何对专家组说如何处理这种方法 谢谢。如果您只是想处理按下的“取消”按钮: NSSavePanel
NSSavePanel *save = [NSSavePanel savePanel];
[save setDelegate:self];
[save runModal];
我在文件上看到:
好:
当用户单击面板的“确定”按钮时,将调用此操作方法
- (iAction)确定:(id)发送方
谢谢。如果您只是想处理按下的“取消”按钮:
NSSavePanel *panel = [NSSavePanel savePanel];
panel.delegate = self;
if ([panel runModal] == NSOKButton) {
// Got it, use the panel.URL field for something
} else {
// Cancel was pressed...
}
找到另一个具有非阻塞面板的解决方案:
[save beginWithCompletionHandler:^(NSInteger result) {
if (result == NSFileHandlingPanelOKButton)
{
NSLog(@"Ok pressed.");
}
else if (result == NSFileHandlingPanelCancelButton)
{
NSLog(@"Cancel pressed.");
}
}];