掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
.NETで外部フォームで変数の呼び出し。 (ID:106213)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
nanashiさん、大変参考になりました。ありがとうございます。 >Button1_Click内でlistDialogというform2オブジェクトを宣言していますね。 >で、listDialogというオブジェクトをShowDialogしています。 >つまり入門者さんがform2だと思っているオブジェクトは >実際にはlistDialogというオブジェクトなんです。 >で、このオブジェクトはButton1_Click内で宣言されているため、 >このイベント内からしか扱えないという事です。 >(分かり難いかもしれませんが、そういうことです。) ええと、つまりButton1_Clickに対してしかform2は存在しない。みたいな感じでしょうか? なんとなくならば理解はできました。 それでnanashiさんが修正されたコードを実行してみましたが以下の箇所でエラーがでました。 ==================================== (form1) 'form1がアクティブなったときの処理 Private Sub KSmst03_Activated(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Activated Dim Code As Integer Code = listDialog.TCode ←#この部分です TextBox1.Text = Code End Sub ==================================== エラー内容は 「'System.NullReferenceException' のハンドルされていない例外が 作業実績管理システム.exe で発生しました。 追加情報 : オブジェクト参照がオブジェクト インスタンスに設定されていません。」 といったものでした。 このエラー内容がどんなものか簡潔にはわかりませんが、実行してみて自分でおかしな部分に気づきました。 まず、form1がアクティブになったときのイベントにからませてform2のテキストから値をとってきているわけですが、もちろんform2はform1のボタンを押下しないと開かないわけで、当然テキストに入力もできないわけで・・・ それでいてデバックすると一番最初にはform1は開かれるわけで、開かれた瞬間はアクティブになっているのは当然で・・・(泣) こういう場合はどういったイベントに処理をからませていけばいいんでしょうか? 自分の理解ではonLoad時にはActivatedは働かないと思っていましたが、そうではないんですね;; もう少しだけヒントをいただけないでしょうか?
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.