[VB2008] Toolstrip eventhandler: informatie doorgeven

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • sebastius
  • Registratie: September 2000
  • Laatst online: 22-09 07:16

sebastius

Laten we lekker link gaan doen

Topicstarter
Al een paar avonden ben ik aan mijn keuken laptop software aan het werken. Uiteindelijk wordt het een combinatie van Web-TV, MP3 Radio, kookwekker en receptenboek.

Na wat inspiratie van anderen hun werk ben ik begonnen in VB2008 (hiervoor heb ik gewerkt met Qbasic en VB6, en Basic voor microcontrollers). Het gaat bij mij echter mis bij het toevoegen van een aantal dropdownitems, of liever gezegd, in hun Eventhandler. Ik krijg met geen mogelijkheid de teller A doorgegeven zoals ik vroeger deed met (a as integer) bijvoorbeeld om de sub aan te roepen.

Uiteindelijk moet de sub zender_Click de variabele A gebruiken om uit de tabel het juiste getal te vissen. Dat kan ik zelf maken, geen probleem. Het zit hem nu echt in de 'lijm', het verbinden van de knop naar de juiste functie (dus als ik op Veronica druk, ik het getal '6' doorkrijg als parameter voor de sub zender_click.

Na enkele uren ploeteren door documentatie van Eventhandlers, menustrip en consorten, en diverse weblogs ben ik de wanhoop een beetje nabij.

Bijgevoegd een stukje relevante code om een en ander te illustreren. Mijn probleem zit bij regel 4 en regel 11 voor zover ik in kan schatten.

Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
    Private Sub kookwekker_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim kanaallijst(,) As String = {{"Nederland 1", "12"}, {"Nederland 2", "13"}, {"Nederland 3", "14"}, {"-", "-"}, {"SBS 6", "02"}, {"Veronica / Jetix", "04"}, {"RTL 8", "07"}, {"Net 5", "01"}, {"-", "-"}, {"BRT1", "09"}, {"BRT2", "10"}, {"-", "-"}, {"Nickelodeon", "15"}, {"-", "-"}, {"Discovery", "06"}, {"Animal Planet", "05"}, {"Travel Channel", "16"}, {"-", "-"}, {"TMF", "03"}, {"MTV", "08"}, {"TV Oranje", "11"}, {"-", "-"}, {"Etalagekanaal", "17"}}
        For a = 0 To UBound(kanaallijst)
            TVKijkenToolStripMenuItem.DropDownItems.Add(kanaallijst(a, 0), Nothing, New EventHandler(AddressOf zender_Click))

            System.Windows.Forms.Application.DoEvents()
        Next a


    End Sub
    Private Sub zender_Click(ByVal sender As Object, ByVal e As EventArgs)
        Label1.Text = sender.ToString      'Dit is even een testfunctie, het laat keurig de zendernaam zien.
    End Sub