第38講 データベースソフト(住所録)の制作=並列処理の練習☆☆
第16話 ファイルの各サブメニューのコードの解説その7(関数上書き保存ToolStripMenuItem_Clickの解説)
コード再掲
private: System::Void 上書き保存ToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
        if(this->fn->Equals(L""))
          名前を付けてToolStripMenuItem_Click(sender, e) ;
        else
          dcs(fn);
      }


private: System::Void 閉じるToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
        Close();
     }

第38講 データベースソフトもいよいよ今話で終わりになります。
今話は、上書き保存と閉じるです。
        if(this->fn->Equals(""))
          名前を付けてToolStripMenuItem_Click(sender, e) ;
はfnが""と等しいなら名前を付けてToolStripMenuItem_Click(sender, e) を実行しなさいです。
一度も名前を付けて保存していない場合は、
namespace 住所録 {
    ・
    ・
    ・
  /// <summary>
  /// Form1 の概要
  /// </summary>
  public ref class Form1 : public System::Windows::Forms::Form
  {
    public:
    String^ fn;
    Form1(void)
    {
      this->fn=L"";
      InitializeComponent();
      //
      //TODO: ここにコンストラクター コードを追加します
      //
    }
    ・
    ・
    ・
から、L""です。
ですから、1度も名前付けて保存が実行されていない場合は、
上書き保存を選んでも名前付けて保存が実行されるわけです。
それに対して、名前を付けて保存が1度実行されていれば、
その名前が
private: System::Void 名前を付けてToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
        SaveFileDialog^ w=gcnew SaveFileDialog();
        w->Filter="CSV形式(*.csv)|*.csv|すべてのファイル(*.*)|*.*";
        if(w->ShowDialog()!=System::Windows::Forms::DialogResult::OK)return;

        dcs(w->FileName);
        this->fn=w->FileName;

}
によって、fnに入っていますから、dcs(fn);が実行されるわけです。

最後、

private: System::Void 閉じるToolStripMenuItem_Click(System::Object^ sender, System::EventArgs^ e) {
        Close();
     }
はソフトを終了するでしたね。

長い間、お付き合いいただきありがとうごました。これにて、第38講も終了です。



第15話へ 第39講第1話へ

戻る

VC++講義第1部へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)