Cocoa/Obj-C - Datei Öffnen, wenn Sie Sie auf der Anwendung Ikone
Derzeit gibt es eine Taste auf meiner app-Schnittstelle, die es erlauben, eine Datei zu öffnen, hier ist mein code:
In meiner app.h:
- (IBAction)selectFile:(id)sender;
In meiner app.m:
@synthesize window;
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
}
- (IBAction)selectFile:(id)sender {
NSOpenPanel *openPanel = [NSOpenPanel openPanel];
NSArray *fileTypes = [NSArray arrayWithObjects:@"xml",nil];
NSInteger result = [openPanel runModalForDirectory:NSHomeDirectory() file:nil types:fileTypes ];
if(result == NSOKButton){
NSString * input = [openPanel filename];
Wie Bearbeite ich mein code zum öffnen mit dem application-icon per drag & drop?
Hinweis: ich bearbeitet die .plist-Datei und fügte die Zeile für "xml", wird aber nichts ändern, bekam eine Fehlermeldung, wenn meine Datei gelöscht wird, auf das Symbol.
Hinweis 2: ich verknüpfte die "Datei -> Öffnen...", um die selectFile: wich, siehe mein code
Anmerkung 3: Meine app nicht ein Dokument-basierte Anwendung
Vielen Dank für Ihre Hilfe!
Miskia
- Warum nutzen Sie nicht NSDocument? Nicht flexibel genug?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fügen Sie zunächst die richtigen Erweiterungen zu CFBundleDocumentTypes innerhalb der .plist-Datei.
Weiter die Umsetzung der folgenden Delegierten:
- Anwendung:openFile: (eine Datei)
- Anwendung:openFiles: (mehrere Dateien gelöscht)
Referenz:
NSApplicationDelegate Protocol Reference
Antwort zu Kommentar:
Schritt für Schritt-Beispiel, ich hoffe, er macht alles klar 🙂
Hinzufügen .plist-Datei:
Hinzufügen ...AppDelegate.h
Hinzufügen ...AppDelegate.m