2011-02-26 23 views
10

¿Cómo se muestra el cuadro de diálogo del selector de archivos en Mac OS X? El lenguaje es Objective C.Mostrar el cuadro de diálogo del selector de archivos

+0

Qué lenguaje de programación ? ¿Cacao, carbono, etc.? ¿Qué has probado ya? –

+0

@Delan Azabani, si está haciendo esta clase de pregunta, probablemente esté hablando de Cocoa. Quizás Java. Pero tienes razón, esto es demasiado ambiguo en este momento. –

+0

Lo siento, el lenguaje es objetivo C No he intentado nada todavía porque ahora estoy desarrollando una API de la biblioteca de iPhoto, ya que estoy esperando una respuesta sobre esta cuestión. –

Respuesta

28

Lo que se busca es 'NSOpenPanel', aquí un ejemplo de cómo utilizar:

NSOpenPanel *panel = [NSOpenPanel openPanel]; 
[panel setCanChooseFiles:NO]; 
[panel setCanChooseDirectories:YES]; 
[panel setAllowsMultipleSelection:YES]; // yes if more than one dir is allowed 

NSInteger clicked = [panel runModal]; 

if (clicked == NSFileHandlingPanelOKButton) { 
    for (NSURL *url in [panel URLs]) { 
     // do something with the url here. 
    } 
} 
+0

¡Muchas gracias por haberlo hecho! Solo tuve que comentar la parte click == como NSFileHandlingPanelOkButton como no definida. –

+0

Podría ser por el hecho de que estoy desarrollando Mac OS Lion que NSFileHandlingPanelOkButton no se encontró. Podría haber sido desaprobado? –

+0

pero, creo que es una pequeña falta de ortografía, intente: NSFileHandlingPanelOKButton, con OK y no está bien ;-) – evotopid

0

Los que están en busca de Swift versión

let panel      = NSOpenPanel() 
panel.canChooseDirectories = false 
panel.canChooseFiles   = true 
panel.allowsMultipleSelection = false 
panel.allowedFileTypes  = ["txt"] 
let clicked     = panel.runModal() 

if clicked == NSApplication.ModalResponse.OK { 
    print("URLS => \(panel.urls)") 
} 
Cuestiones relacionadas