TSaveDialogをフォームに配置します。
ボタンを押したときのイベントを作成します。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
…
}
ダイアログの設定を行います。
//デフォルトのファイル拡張子
SaveDialog1->DefaultExt = ".txt";
//ファイルマスク(フィルタ)
SaveDialog1->Filter = "テキストファイル (*.txt)|*.TXT|すべてのファイル (*.*)|*.*";
//ダイアログボックスが開いたときのカレントディレクトリ
SaveDialog1->InitialDir = "C:\\sample"
//ダイアログの外観と動作
SaveDialog1->Options << ofOverwritePrompt << ofCreatePrompt;
//タイトルバーに表示するテキスト
SaveDialog1->Title = "タイトルバーに表示するテキスト";
TSaveDialogのプロパティはマニュアルをご覧ください。
Vcl.Dialogs.TSaveDialog – RAD Studio API Documentation
TSaveDialogのExecuteメソッドを呼び、ダイアログを表示します。
Executeメソッドは、ユーザーがファイル名を選択して[保存]をクリックするとtrueを返します。
//ダイアログを表示する
//ユーザーがファイル名を選択して[保存]をクリックするとtrueを返す
if (SaveDialog1->Execute())
{
…
}
TSaveDialogのFileNameプロパティで、選択されたファイル名を取得します。
//選択されたファイルの名前
Edit1->Text = SaveDialog1->FileName;
全体のコードは次のようになります。
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//デフォルトのファイル拡張子
SaveDialog1->DefaultExt = ".txt";
//ファイルマスク(フィルタ)
SaveDialog1->Filter = "テキストファイル (*.txt)|*.TXT|すべてのファイル (*.*)|*.*";
//ダイアログボックスが開いたときのカレントディレクトリ
SaveDialog1->InitialDir = TPath::GetHomePath();
//ダイアログの外観と動作
SaveDialog1->Options << ofOverwritePrompt << ofCreatePrompt;
//タイトルバーに表示するテキスト
SaveDialog1->Title = "タイトルバーに表示するテキスト";
//ダイアログを表示する
//ユーザーがファイル名を選択して[保存]をクリックするとtrueを返す
if (SaveDialog1->Execute())
{
//選択されたファイルの名前
Edit1->Text = SaveDialog1->FileName;
}
}