viernes, 24 de febrero de 2012

Compartir eventos con código (AddHandler, Adressof)

Cuando añadimos por ejemplo un nuevo toolstripmenuitem, y queremos que tenga el mismo evento click ya creado procederemos a AddHandler y Adressof


 Dim texto As String = ""
        Dim num As Integer
        Dim nuevotam As ToolStripMenuItem
        texto = InputBox("Introduce un tamaño de 8 a 40", "Tamaño")

        If IsNumeric(texto) Then

            If texto >= 8 And texto <= 40 And IsNumeric(num) Then

                Dim repe As Boolean
                Dim insertado As Boolean = False
                repe = repetido(texto)
                If repe = False Then
                    Dim i As Integer = 0
                    Do While i <= ContextMenuStrip2.Items.Count - 3 And insertado = False
                        If CDbl(texto) < ContextMenuStrip2.Items.Item(i).Text Then
                            nuevotam = New ToolStripMenuItem
                            nuevotam.Text = texto
                            Label1.Font = New System.Drawing.Font(fuente, CInt(nuevotam.Text), estilo)
                            ContextMenuStrip2.Items.Insert(i, nuevotam)
                            AddHandler nuevotam.Click, AddressOf ToolStripMenuItem2_Click
                            insertado = True
                        Else
                            i = i + 1
                        End If
                    Loop
                    If insertado = False Then

                        nuevotam = New ToolStripMenuItem
                        nuevotam.Text = texto
                        Label1.Font = New System.Drawing.Font(fuente, CInt(nuevotam.Text), estilo)
                        ContextMenuStrip2.Items.Insert(ContextMenuStrip2.Items.Count - 2, nuevotam)
                        AddHandler nuevotam.Click, AddressOf ToolStripMenuItem2_Click
                    End If
                Else
                    MessageBox.Show("Tamaño repetido")
                End If
            Else
                MessageBox.Show("Error #459215E2: El valor introducido no es un valor válido")
            End If
   
        End If


Como podemos ver, estamos creando un nuevo toolstripmenuitem para insertarlo, darle el formato al label1, con las características (el tamaño) de este, y después compartimos el evento click con un evento ya existente

No hay comentarios:

Publicar un comentario