【问题标题】:beginSheetForDirectory to beginSheetModalForWindowbeginSheetFor 目录开始SheetModalForWindow
【发布时间】:2013-03-15 13:32:55
【问题描述】:

我正在更新 10.6 后的一些旧代码。

该代码包含一个保存时间方法,其中包含大约 60 行代码,并且从大约 1/2 打的地方调用。代码使用了 beginSheetForDirectory,从 10.7 开始不再支持。

我很困惑如何将以前基于 @selector 的解决方案转换为新的 ^(NSInteger) 表单。我能找到的所有示例都使用内联块,我很困惑如何使该调用成为单独的方法。

save方法有这个sig,内部不使用x:

- (void)savePanelDidEnd:(NSOpenPanel *)sheet 
        returnCode:(int)returnCode 
       contextInfo:(void *)x

【问题讨论】:

    标签: macos xcode4.5


    【解决方案1】:

    在另一个帖子中找到了这个。诀窍是在没有返回处理程序的情况下调用 beginSheetForDirectory,然后立即在其上调用 runModal。当 runModal 返回时,正常处理对话框。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-02
      • 1970-01-01
      • 2010-12-31
      • 2020-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多