如何在Xcode Cocoa项目中创建一个打开文件对话框?

4

我正在寻找Windows系统中GetOpenFileName函数的等效函数。

1个回答

4

打开文件的标准Cocoa类是NSOpenPanel

示例代码:

//this gives you a copy of an open file dialogue
NSOpenPanel* openPanel = [NSOpenPanel openPanel];

//set the title of the dialogue window
openPanel.title = @"Choose a .PED texture file";

//shoud the user be able to resize the window?
openPanel.showsResizeIndicator = YES;

//should the user see hidden files (for user apps - usually no)
openPanel.showsHiddenFiles = NO;

//can the user select a directory?
openPanel.canChooseDirectories = NO;

//can the user create directories while using the dialogue?
openPanel.canCreateDirectories = YES;

//should the user be able to select multiple files?
openPanel.allowsMultipleSelection = NO;

//an array of file extensions to filter the file list
openPanel.allowedFileTypes = @[@"ped"];

//this launches the dialogue
[openPanel beginSheetModalForWindow:appDelegate.controlsWindow
                completionHandler:^(NSInteger result) {

                    //if the result is NSOKButton
                    //the user selected a file
                    if (result==NSOKButton) {

                        //get the selected file URLs
                        NSURL *selection = openPanel.URLs[0];

                        //finally store the selected file path as a string
                        NSString* path = [[selection path] stringByResolvingSymlinksInPath];

                        //here add yuor own code to open the file

                    }

                }];

如何在对话框中添加“显示选项”按钮? - George Shalvashvili

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接