- 題名: Form_Loadイベント
- 日時: 2004/04/12 18:58:41
- ID: 3623
- この記事の返信元:
- (なし)
- この記事への返信:
- [3624] Re[1]: Form_Loadイベント2004/04/12 19:02:55
- ツリーを表示
■No3625に返信(kageさんの記事) Dim f As Form Select Case hogehoge Case 0 : f = New Form2 Case 1 : f = New Form3 End Select f.Show() Me.Close() じゃだめ?
分類:[.NET]
kageです。お世話になります。
VB6で、メインメニューのFormからサブメニューのFormを呼び出し、いろんな作業を行いメインメニューに戻り、他のサブメニューFormを呼び出すというアプリをいろいろ作っていました。
サブメニューで行った作業をDataファイルに書き出し、メインメニューに戻ったところでForm_LoadイベントでDataファイルを読んで作業状態をメインメニューに反映させるというやり方です。
現在、これらのプログラムをVB.NETに勉強をかねて、変換を行っています。
前置きが長くなりました。
悩んでいるのは、メインメニューに戻ったとき、Form_Loadイベントが起きないのです。
'VB6のコード(Form1)
Private Sub Command1_Click()
Unload Form1
Form2.Show
End Sub
Private Sub Form_Load()
MsgBox "Form1がLoadされました"
End Sub
'同じくForm2
Private Sub Command1_Click()
Unload Form2
Form1.Show
End Sub
これをVB.NETに変換すると、Form1を閉じた時点でプログラムが終わってしまいますので
Form1.DefInstance.Close() を Form1.DefInstance.Hide() に変えています。
(もともとVB6でも、Form1.Hide にすると、Form_Loadイベントは起きませんが)
何かいい方法がありましたらよろしくお願いいたします。