我NSOpenPanel
用来允许用户选择一个文件。但是,NSOpenPanel
有时会出现 UI。侧边栏有时会显示,有时不会。只需滚动即可将选定的文件夹(在本例中为“Cookie Stumbler”)移动到打开面板的中间/底部/任何位置,有时它会停止整个应用程序。
我正在调用NSOpenPanel
作为IBAction
使用主线程的一部分。什么都没有登录Console.app
,尽管我记得它曾经按照“等待 UI 响应”的方式记录了一些东西。
这NSOpenPanel
是设置的方式:
NSOpenPanel*open = [NSOpenPanel openPanel];
[open setTitle:NSLocalizedString(@"Select License File",nil)];
[open setPrompt:NSLocalizedString(@"Select License",nil)];
[open setMessage:NSLocalizedString(@"Please select your Cookie Stumbler license file:",nil)];
[open setAllowedFileTypes:[NSArray arrayWithObject:@"cskey"]];
[open beginSheetModalForWindow:_registrationWindow completionHandler:^(NSInteger result)
{
if (result == NSOKButton)
{
// other code here
}
}];
这是怎么回事?