画面の遷移

解決


アライ丼  2003-04-11 10:05:59  No: 77668  IP: [192.*.*.*]

アライ丼と申します
VB.NETを使用でPGを作成しております

FormAのボタンをクリックした時に
FormAからFormBに遷移させたいのですが上手くいきません

VB6.0ではコマンドボタンのクリックイベントで
FormBをShowしてからFormAをCloseすれば
問題なかったような気がしますが
.NETではボタンのクリックイベントで
FormBをした後にFormAをMe.Closeとすると
プログラムが終了してしまいます

なのでしょうがなく以下のように記述しています

Private Sub button_Click(ByVal sender As Object, ByVal e As ・・・
   Dim frmFormB As Windows.Forms.Form = New FormB()
   frmFormB.Owner = Me
   frmFormB.Show()
   Me.Hide()

FormBを表示し、FormAを閉じる
又はその逆を実現するには
どうしたらよいのでしょうか?
ご教授の程よろしくお願い致します

編集 削除
美咲  URL  2003-04-11 12:46:34  No: 77669  IP: [192.*.*.*]

プログラムの開始を標準モジュールのSub Mainからはじめてみたらどう(.NETにあるのかどうかは知らないけど)

編集 削除
アライ丼  2003-04-11 14:36:31  No: 77670  IP: [192.*.*.*]

美咲産レスありがとうございます

VB6.0でもFormAがスタートアッププログラムになっていて
Me.Closeをやるとアプリケーションが終了してしまいしたね
ご意見ありがとうございました

編集 削除
Y2  2003-04-11 14:43:41  No: 77671  IP: [192.*.*.*]

VB.NETの場合、たしかSub Mainはどこに記述してもよかったと思います。
ただ、プロジェクトのプロパティか何かで、アプリケーションの起動がForm1などになっていると思うので、そこをSub Main に変えてあげてください。

それと、フォームはPublicとして宣言しておいた方が良いかもしれません。
Dim frmFormB As Windows.Forms.Form

Public frmFormB As Windows.Forms.Form
FormAも同じような感じにして、全てのフォームをSub Main経由で制御した方が楽かもしれません。;^^)

編集 削除
アライ丼  2003-04-11 17:27:12  No: 77672  IP: [192.*.*.*]

Y2さんアドバイスありがとうございます
確かにPublicの方が楽かもしれないですね

お二人方ありがとうございます

編集 削除