Form1からForm2への受け渡し

タグの編集
投稿者 RJ  (社会人) 投稿日時 2016/10/6 14:14:14
ご質問です

Form1に ボタンを設置し
 ボタンを押すと Form2の数値が変わるようにしたいのですができません

’Form1のボタン
’seisouがForm2

Private Sub Button3_MouseDown(sender As Object, e As MouseEventArgs) Handles Button3.MouseDown
         Select Case e.Button
             Case MouseButtons.Right
                 '右クリックで-
                seisou.Label10.Text = CStr(Val(seisou.Label10.Text) - 1)
                 seisou.TextBox1.Text = CStr(Val(seisou.TextBox1.Text) - 1)
                 '左クリックで+
             Case MouseButtons.Left
                 seisou.Label10.Text = CStr(Val(seisou.Label10.Text) + 1)
                 seisou.TextBox1.Text = CStr(Val(seisou.TextBox1.Text) + 1)


ラベルテキストが
左クリックで+ 右クリックで-にしています

Form2からForm1はできるんですが
親フォームからだとどのようにすればよろしいでしょうか??
投稿者 masaX  (社会人) 投稿日時 2016/10/6 15:41:36
例えば、Form1のButton1でForm2を起動するとして
Public Class Form1

    Dim seisou As Form2 'seisouを    Form2として宣言

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        seisou = New Form2 'seisouを初期化
        seisou.Show() 'Form2を起動
    End Sub

    Private Sub Button3_MouseDown(sender As Object, e As MouseEventArgs) Handles Button3.MouseDown
        Select Case e.Button
            Case MouseButtons.Right
                '右クリックで-
                seisou.Label10.Text = CStr(Val(seisou.Label10.Text) - 1)
                seisou.TextBox1.Text = CStr(Val(seisou.TextBox1.Text) - 1)
                  '左クリックで+
            Case MouseButtons.Left
                seisou.Label10.Text = CStr(Val(seisou.Label10.Text) + 1)
                seisou.TextBox1.Text = CStr(Val(seisou.TextBox1.Text) + 1)
        End Select
    End Sub

End Class

こんな感じでどうですか。
投稿者 RJ  (社会人) 投稿日時 2016/10/6 16:12:11
masaX様 ありがとうございます

早速やってみましたが

Select Case e.Button
            '右クリックで-
            Case MouseButtons.Right
                seisou.Label2.Text = CStr(Val(seisou.Label2.Text) - 1)
                seisou.TextBox1.Text = CStr(Val(seisou.TextBox1.Text) - 1)
                '左クリックで+
            Case MouseButtons.Left
                seisou.Label2.Text = CStr(Val(seisou.Label2.Text) + 1)
                seisou.TextBox1.Text = CStr(Val(seisou.TextBox1.Text) + 1)

        End Select

Label2.textなど波線になります

これは単純のseisouじゃなく
Form2で普通にやればいいんですかね


投稿者 RJ  (社会人) 投稿日時 2016/10/6 16:17:23
単純にform2で参照したら

できましたw

masaX様のヒントのおかげでできました

ありがとうございました!!