複数フォーム – プログラミング – Home

通知
すべてクリア

[解決済] 複数フォーム


うっほっほ
 うっほっほ
(@うっほっほ)
ゲスト
結合: 22年前
投稿: 3
Topic starter  

2つのフォームをいったり来たりするプログラムを作成しているのですが、

フォーム1のボタンのクリックイベント
private void button3_Click(object sender, System.EventArgs e)
{
Form Form2 = new Form2();
Form2.Show();
this.Hide();
}
とボタンのクリックイベントでフォーム2を表示してフォーム1を非表示
にしたあと、フォーム2のボタンから非表示になったフォーム1を
インスタンスを作成せずに、非表示にしたフォーム1そのものを表示する方法を
教えてください.

フォーム2のボタンのクリックイベント
private void button1_Click(object sender, System.EventArgs e)
{
     Form Form1 = new Form1();
     Form1.show();
this.Close();
}
とこのようにやってしまうと、非表示になっているフォーム1は表示されません。


引用未解決
トピックタグ
奈々
 奈々
(@奈々)
ゲスト
結合: 23年前
投稿: 17
 

次のようにForm2にForm1への参照f1変数を持つといいと思います。
なお、クラスと変数が区別しやすいよう 変数はf1,f2としています。

public class Form1 : System.Windows.Forms.Form
{
// 省略
private void button1_Click(object sender, System.EventArgs e)
{
Form2 f2 = new Form2();
f2.Show();
f2.f1 = this;
this.Hide();
}
}

public class Form2 : System.Windows.Forms.Form
{
// 省略
public Form1 f1;
private void button1_Click(object sender, System.EventArgs e)
{
f1.Show();
this.Close();
}
}


返信引用
橋本
 橋本
(@橋本)
ゲスト
結合: 22年前
投稿: 24
 

割り込み質問で申し訳ないのですが、
現在ロードしてあるフォームをスタティックなプロパティなどで、参照することは
できないのでしょうか?


返信引用
うっほっほ
 うっほっほ
(@うっほっほ)
ゲスト
結合: 22年前
投稿: 3
Topic starter  

参照変数を使えばよいのですね。
早くOOPになれるようがんばります。
奈々さん、どうもありがとうございました。


返信引用

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました