どのPictureBoxがクリックされたかを知るには?

解決


びぎなー  2007-09-25 20:40:49  No: 137598

PictureBoxが3つあり、そのうちのどれかをクリックした時に
フォーム2を開いて、フォーム2にあるTextBox1に、クリック
されたPictureBoxの番号(Tag??)を表示させたいのですが、
どのPictureBoxがクリックされたのかを知るにはどうすれば
いいのでしょうか?(VB2005です)

Private Sub test(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PictureBox3.Click, PictureBox2.Click, PictureBox1.Click

        Dim F2 As New Form2

        F2.TextBox1.Text = ?????
        F2.Show()
    End Sub

よろしくお願いします。


魔界の仮面弁士  2007-09-25 20:44:56  No: 137599

> PictureBoxの番号(Tag??)
なぜ「??」なのでしょう…。(^^;
Tag プロパティを得たいという意味で良いのでしょうか?
それとも番号というのは、他の何か(Name等)なのでしょうか?

> どのPictureBoxがクリックされたのかを知るにはどうすれば
引数 sender には、イベントの発生元となったオブジェクトが渡されます。
ですから、Tag プロパティを得たいなら、
  Dim o As Object = sender.Tag
で得られます。

もし、Option Strict On モードであれば、
  Dim o As Object = DirectCast(sender, PictureBox).Tag
または
  Dim o As Object = DirectCast(sender, Control).Tag
という感じで。


びぎなー  2007-09-25 21:15:47  No: 137600

魔界の仮面弁士さん、素早い回答ありがとうございます。
  Dim o As Object = sender.Tag
でやりたい事ができました。ありがとうございました。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加