2012-04-10 6 views
0

NSSavePanelがファイルを保存していません。私は手動でファイル名を入力OSX 10.5NSSavePanelがファイルを保存していません。 (OSX 10.5)

NSSavePanel *createPanel = [[NSSavePanel alloc] init]; 
    [createPanel setCanCreateDirectories:YES]; 
    int result = [createPanel runModal]; 
    if (result == 1) { 
     [lyricsFileField setStringValue:[createPanel filename]]; 
    } 

のためのアプリケーションを構築していると私は、ディレクトリを選択しますが、ファイルは保存されません。

ありがとう

psパネルにファイルパスを渡すにはどうしたらいいですか? (setNameFieldStringValue:> 10.6のみ)

答えて

1

ファイルを保存していません。あなたのtextFieldのテキストをあなたの場所の文字列に変更するだけです。代わりに

[data writeToFile:[createPanel filename] atomically: NO]; 

:あなたはこれを使用する必要があるファイルを保存したい場合は

[lyricsFileField setStringValue:[createPanel filename]]; 
+0

おかげさまで、どのようにファイルパスをパネルに渡すことができますか? – aneuryzm

+0

ファイルへのパスを設定する場合[createPanel setDirectoryURL:NSURL]を使用できます。 -setCanCreateDirectoriesの後にこれを書いてください。 –

1

NSSavePanelは、ファイルを保存することになっていない、それは私が知っているため、ファイルを選択するためのものです。

そして、10.6より前には、directoryfilenameのプロパティがあります。

+0

OSX <10.6のsetNameFieldStringValueに相当するものが見つかりません – aneuryzm

+0

'filename'または' filename'と 'directory'プロパティの組み合わせではありませんか? –

+0

getterは動作しますが、ファイルパスを設定する方法がわかりません – aneuryzm