none
フォームの再表示 RRS feed

  • 質問

  • 再び質問します。

    C++/CLI言語で

    親フォーム(Form1)から子フォーム(Form 2)を呼び出すと同時にForm1を非表示にして、Form2をダブルクリックして、非表示とともに、Form1を再び表示させる方法がわかりません。

    Form1側

    #include "Form2.h"

    private: System::Void 表示ToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
       this->Visible = false;//Form1を非表示
       Form2^dig1 = gcnew fusen();
       dig1->Show();
       }

    Form2側 

    private: System::Void Form2_DoubleClick(System::Object^  sender, System::EventArgs^  e) {
        this->Visible = false; //Form2を非表示
      }

     

    2007年1月14日 4:47

すべての返信

  • その程度の処理であれば、Form2のOwnerプロパティを使えばいいでしょう。

    Form1.h

    dig1->Show(this);

    Form2.h

    this->Owner->Visible = true;


    そもそも、Form2を表示しているとき、Form1を隠すのであれば、なぜ
    Showメソッドを使うのうでしょうか?
    機能的に ShowDialogで十分なようですが。

    2007年1月14日 5:29
  • ShowDialog メソッドを呼び出す前に Form1 の Visible を false。
    ShowDialog メソッドの後に、Form1 の Visible を true。

    2007年1月14日 5:49
  • 蒼の洞窟さん、じゃんぬねっとさんありがとうございました。

    ShowDialogで、やったら、ちゃんとできました。

     

    2007年1月14日 6:32