• ベストアンサー

コマンドボタンでファイルの保存先を設定したい。

C++ builder 2009を使用しています。現在、作成したバイナリデータをファイルとして出力する際に、ファイルの保存場所を設定するために、コマンドボタン1つとテキストボックス1つを用意して、コマンドボタンをおして、ファイルを保存するフォルダのパスを設定して、そのパスをテキストボックスに表示しておくということはどのようにすればよいでしょうか? SaveDialog1というのがありますが、これをつかうのでしょうか? どうぞ、ご教授よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

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のプロパティはマニュアルをご覧ください。 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; } }

関連するQ&A

  • 出力先のパスを保存したい

    出力先のパスを保存したい こんにちは。C#もしくはVBについてお教え下さい。VS2010を使っています。 フォームには下記のコントロールが配置されています。 ・ボタン1つ ・テキストボックス1つ テキストボックスにはパスが書かれています。ボタンをクリックすると、パスに設定されたフォルダにデータが出力されるようにしたいと思っています。 アプリを終了しても、そのパスが保存され、次回アプリ起動時にもそのパスが読み込まれるようにしたいです。 ただし、コードにパスを直接書き込むことはしたくありません。ユーザーがパスの出力先を変更したくなる時もある為です。 このような場合、どこにパスを保存するのがいいでしょうか?一応20種類くらいパスの出力先を変更できるようにしたいと思っています。 http://dobon.net/vb/dotnet/programing/storeappsettings.html http://www.atmarkit.co.jp/fdotnet/dotnettips/263apppath/apppath.html 調べた中では上のURLのどれかを使えばいいとは思いますが、どれを使っていいかがわかりません・・・ご教授宜しくお願い致します。

  • コマンドボタンで保存先のフォルダ指定は出来ますか?

    OSはWindowsNT、Excel97です。 PC素人の営業さんが使う見積書の作成をしています。 そこで質問です。 コマンドボタンで保存ボタンを作成し、それを押すと「名前をつけて選択」画面が開き、保存先として決まったのフォルダが選択されている状態になっているという事は出来るでしょうか?(要するにフォルダを探す手間を省きたいのです) 保存操作の流れとして、保存コマンドボタンを押す→ファイル名を入れる→保存を押すとしたいのです。 宜しくお願いします。

  • ファイルの保存を行いたい

    Visual Basic 2010で、メールソフトで添付ファイルの保存・削除と同じような動きをするテキストボックス?を作りたいと考えてますがコードが思いつきません。 どなたか教えて頂けないでしょうか? 動作として (1)テキストボックスにドラッグ&ドロップで選択されたファイルを表示。 この時、テキストボックスに表示されているファイルを右クリックで表示から削除も行いたい (2)実行ボタンを押下で、テキストボックスに表示されているファイルを 日付(年月日と時刻)のファイル名でフォルダーを新規作成して保存したい。 宜しくお願いします。

  • 指定された保存先パスがない場合、エラーを出したい。

    C++ Builder2009でプログラミングしてます。 現在、Edit2->Textのファイルパスの文字列が保存先として使用していて、 FILE* fp = _wfopen(Edit2->Text.c_str(), L"wb"); このように、ファイル出力時にファイルパスを指定しているのですが、例えば、”Edit2->Text”に指定された保存先ファイルパスが存在しないフォルダだった場合など、エラーとしてファイル出力処理を停止して、さらにエラーボックス表示を出すようにしたいのですが、どのようにすればよいかご教授頂きますようよろしくお願い致します。

  • コマンドボタンをクリック時のコードから抜けたい

    C++ Builder 2009でプログラムやってます。 コマンドボタンのクリックでファイルを開くプログラミングを作っているのですが、 ”OpenDialog1->FileName”に存在しないファイルのパスが入っていた場合に、そのコマンドボタンのコードから抜けたいのですがどうしたらよいのでしょうか? if(!FileExists(OpenDialog1->FileName)){ break; } というのがビルドエラーになるのですが、方法をご教授頂きますようお願い致します。

  • ファイルの保存について

    PHPとMySqlで簡易的なCMSを作成しています。 1つの記事にタイトルと本文と画像(最大)6枚を登録します。 表示のイメージはこんな感じです。 「タイトル(テキストのみ)」 「画像1」「画像2」「画像3」 「画像4」「画像5」「画像6」 「本文(テキストのみ)」 「ワード(クリックするとダウンロード)」 「PDF(クリックするとブラウザで開く)」 ファイルのアップロードは、本文とは別の項目です。 画像の他にPDFやワードなどのファイルもアップロード可能です。 アップしたファイルのパス(files/img.jpgのようなテキスト)だけをtext型のカラムに登録しようと思っていたのですが、セキュリティ的に画像はバイナリデータとして保存した方がいいとか。。。 $img_path = '画像のパス'; $img = file_get_contents($img_path); $ext = pathinfo($img_path, PATHINFO_EXTENSION); こんな感じで、バイナリデータと拡張子を分けて登録するようです。 ファイルは、バイナリデータとして登録しアップロードされたフォルダから消す方法と パスをテキストで登録しファイルを残しておく方法とはどちらがいいのでしょうか?

    • ベストアンサー
    • PHP
  • PPTのコマンドボタンがクリックできません

     今日は、質問させて頂きます。どうぞよろしくお願いいたします。  環境:Win7 + PPT2007 でございます。  コントロールのテキストボックスとコマンドボタンを配置致しましたが、 テキストボックス内に記入できる状態にできません。 (コマンドボタンも押せる状態にできません。。。)  Excelですと、コマンドボタンの場合 ・コマンドボタン右クリック ・→マクロ登録 としてやると、コマンドボタンを押せる状態になると思います。 また、テキストボックスの場合 ・「デザインモード」ボタンを解除 してやると、テキストボックス内に記入できる状態になると思います。  しかしPPT2007の右クリックメニューにマクロ登録項目がございません。  そこで、 ・コマンドボタンをダブルクリック ・→Private Sub CommandButton1_Click()を作成 といたしましたが、それでもまだコマンドボタンを押せる状態になってくれません。 「デザインモード」ボタンも見当たりませんし。。。  これらを使える状態にするには、どのようにすべきでございましょうか??? もしお詳しい方がいらっしゃいましたら、どうぞよろしくお願いいたします。

  • コマンドボタンで「終了ボタン」を作りたい!

    こんにちは。OSはWindowsNT、Excel97です。 PC初心者さんが使うエクセルの見積データを作成しており、より簡単に操作して頂くためにコマンドボタンで操作を簡略化したいと思っています。 そこで質問なのですが、ファイルを閉じようとする時、よく右隅の×ボタンを押し、「保存しますか?はい、いいえ、キャンセル」という画面がでます。私の作っているデータでは上書されると困るので保存をして欲しくないのですが、その辺が使い手の方には分かり難いようで、よく上書されてしまいます。読み取り専用にするとか保護設定するとか方法はあるとは思いますが、データ作成上それが出来ません。出来れば、コマンドボタンで「終了ボタン」を作り、保存せずに終了できるようにしたいのです。こういう事って可能でしょうか? 皆様、宜しくお願いします。

  • エクセル コマンドボタン

    1)Sheet1でコマンドボタンを作成。クリックするとフォームが表示さ  れます。そのフォームの中のテクストボックスに数字を入れ、それ  をSheet2のB2に挿入したいです。どうすればいいのですか? 2)Sheet2にコマンドボタンを作りました。Sheet2へ戻るようなボタン  を作りたいのですがどうすれば良いですか? 以上2つの質問です。是非教えてください。

  • Word2010 コマンド ボタンを作りたい

    ワード文書の中に、クリックすればリンクしたmid ファイルが起動して、音楽が鳴るようにしたいのですが? 挿入->ハイパーリンクで、ファイル パスのテキストを入れて、クリックさすとできるのですが、 ファイル パスのむき出しは見えない様に、コマンド ボタンに埋め込む簡単な方法は無いでしょうか? VBAを使うとかは、難しすぎますので。 よろしくお願いします。

専門家に質問してみよう