投稿者 リスナー  (学生) 投稿日時 2008/11/26 02:40:14
はじめましてpenetraterさん。そして皆さん。
ここで質問に回答する立場になるのは初めてです。
ちょっと嬉しいような、まだまだな自分が答え良いのか恥ずかしいような。
なにぶん初級講座を気になるところだけ辞書的に使うようなやり方な私でして……。


>>メインのForm1があり、TextBoxにテキストを入力させて「実行」を押すと新しいフォームForm2が表示され、そのTextBoxにはForm1で入力させたものと同じ物を表示させたいのです。
Form2のほうに
Me.TextBox1.Text = Form1.TextBox1.Text
と書いてもうまくいきません。


私も実際に試してみましたが、そう難しく考えず、単純な話なのではないでしょうか。
仕様としては1枚目のフォームのテキストボックスに入力した内容を、ボタンを押すことで、
2枚目のフォームが開き、そこのテキストボックス内に反映されている、という理解でよいでしょうか。


だとするならば、1枚目のボタンクリックイベントで、

 Form2.Show()


と入力し、2枚目を開かせます。そして2枚目のフォームロードイベントで、

TextBox1.Text = Form1.TextBox1.Text

と、記述することでお求めの仕様になるのではないでしょうか。


私は「Me」というとcloseぐらいしか思いつかないからか、
フォーム2枚目であえて「Me」を使うロジックが浮かびませんでしたねえ。(汗ふきふき)

変数を設定しての方法はまだ試していませんが同じ要領でできるのではないでしょうか。

他の方のレスをチラと見たところコツのいるコーディングのようで、
私のやり方が正統でないのでしたら、これは受け流してください。
私も後日またこのイベント作法については調べてみたいと思いますが。

では。とりあえず。