[VB.NET] PictureBox met Event 'at runtime' toevoegen

Pagina: 1
Acties:

  • Swerfer
  • Registratie: Mei 2003
  • Laatst online: 26-05 22:09
In onderstaande code wordt er een menu item toegevoegd en de daarbij horende event.

Visual Basic .NET:
1
2
3
4
Dim mainMenu1 As New MainMenu()
mainMenu1.MenuItems.Add("&File")
mainMenu1.MenuItems.Add("&Edit", New EventHandler(AddressOf Edit_Click))
Me.Menu = mainMenu1
Hoe kan ik ditzelfde bereiken, maar dan voor een picturebox in een panel?

Onderstaande code werkt in ieder geval niet:
Visual Basic .NET:
1
2
3
4
Dim PictureBox1 = New PictureBox
PictureBox1.Location = New Drawing.Point(0, 0)
PictureBox1.Size = New Drawing.Size(160, 120)
Panel1.Controls.Add(PictureBox1 , New EventHandler(AddressOf PictureBox_Click))

Home Assistant | Unifi | LG 51MR.U44 | Volvo EX30 SMER+ Vapour Grey, trekhaak | SmartEVSE V3 | Cronos Crypto.com


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

Addhandler PictureBox.Click, addressof PictureBox_Click

Waarbij je dan zelf mag uitzoeken wat het clickevent is van een Picturebox, aangezien ik me nooit verdiept hebt in deze control.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Swerfer
  • Registratie: Mei 2003
  • Laatst online: 26-05 22:09
gorgi_19 schreef op 31 december 2003 @ 16:36:
Addhandler PictureBox.Click, addressof PictureBox_Click

Waarbij je dan zelf mag uitzoeken wat het clickevent is van een Picturebox, aangezien ik me nooit verdiept hebt in deze control.
Visual Basic .NET:
1
2
3
4
5
6
7
Addhandler PictureBox1.Click, addressof PictureBox_Click

Sub PictureBox_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    If sender Is Picturebox1 then
        ....
    End If
End Sub

Bedankt.

Home Assistant | Unifi | LG 51MR.U44 | Volvo EX30 SMER+ Vapour Grey, trekhaak | SmartEVSE V3 | Cronos Crypto.com


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

Wat is het nut van:
Visual Basic .NET:
1
2
3
 If sender Is Picturebox1 then
        ....
    End If

:?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • whoami
  • Registratie: December 2000
  • Laatst online: 15:14
Misschien hangt ie hetzelfde event wel aan meerdere pictureboxen. :?

https://fgheysels.github.io/


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:28

gorgi_19

Kruimeltjes zijn weer op :9

whoami schreef op 31 december 2003 @ 17:50:
Misschien hangt ie hetzelfde event wel aan meerdere pictureboxen. :?
Dan blijf ik het ranzig vinden en krijg je een enorme bende if-constructies. Dan kan je imho beter een region specificeren en verschilldende methods aanmaken.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Swerfer
  • Registratie: Mei 2003
  • Laatst online: 26-05 22:09
Ik heb meerdere pictureboxen die naar dezelfde event verwijzen. Zo kan ik erachter komen welke picturebox het is geweest...

Maar ik heb al een andere methode om erachter te komen welke picturebox de event heeft getriggerd.
Visual Basic .NET:
1
2
3
4
5
6
7
8
Sub PictureBox_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
    Select Case sender.tag
        Case 1
            ....
        Case X
            ....
    End Select
End Sub

Ik heb dus elke picturebox een ID meegegeven in de Tag property.

Home Assistant | Unifi | LG 51MR.U44 | Volvo EX30 SMER+ Vapour Grey, trekhaak | SmartEVSE V3 | Cronos Crypto.com

Pagina: 1