简体   繁体   中英

How do I create an open file dialog in a xcode cocoa project?

我正在寻找相当于Windows的GetOpenFileName函数。

Standard Cocoa class for Open File UI is NSOpenPanel

Example code:

//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

                    }

                }];

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM