首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSSavePanel处理操作

NSSavePanel处理操作
EN

Stack Overflow用户
提问于 2011-09-20 21:03:54
回答 2查看 877关注 0票数 2

简单问题:我想处理在我的NSSavePanel中按下的“取消”按钮的操作。我在与委托类一起使用面板:

代码语言:javascript
复制
NSSavePanel *save = [NSSavePanel savePanel];
[save setDelegate:self];
[save runModal];

我在文档中看到了以下内容:

ok:当用户单击面板的OK按钮时,将调用此操作方法。

  • (IBAction)ok:(id)sender

但我不知道该怎么跟小组说这个方法.

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-09-21 08:09:17

使用非阻塞面板找到另一个解决方案:

代码语言:javascript
复制
[save beginWithCompletionHandler:^(NSInteger result) {
    if (result == NSFileHandlingPanelOKButton)
    {
        NSLog(@"Ok pressed.");
    }
    else if (result == NSFileHandlingPanelCancelButton)
    {
        NSLog(@"Cancel pressed.");
    }
}];
票数 3
EN

Stack Overflow用户

发布于 2011-09-20 21:54:13

如果你只是想处理按下的取消:

代码语言:javascript
复制
 NSSavePanel *panel = [NSSavePanel savePanel]; 
 panel.delegate = self;

 if ([panel runModal] == NSOKButton) {
     // Got it, use the panel.URL field for something
 } else {
     // Cancel was pressed...
 }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7491747

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档