CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 controles en tiempo de ejecucion

(1/2) > >>

aitord:
hola.
necesito una ayuda. pego parte del codigo:
en resumen, dentro de un grupo creo radiobuttons con el " codigo de cliente".. si tengo 23 clientes me crea 3 hasta ahi bien...

mi problema radica, en controlar eventos cuando pulsa un radiobutton u otro ... no se que evento se dispara, ya que el control se crea en ejecucion.

grupo = New System.Windows.Forms.GroupBox
'' radio = New System.Windows.Forms.RadioButton
grupo.Location = New Point(385, 2)
grupo.Size = New Size(413, 127)
grupo.Text = "Codigo Cliente"
Controls.Add(grupo)

Dim m As Int32 = 3
Dim n As Int32 = 16
Dim Radio(xreg) As System.Windows.Forms.RadioButton
'
For i As Int32 = 1 To xreg
Radio(i) = New RadioButton
Radio(i).Top = n
Radio(i).Left = m
Radio(i).Text = fila("codcliente")
Radio(1).Checked = True
Radio(i).Width = 60
Radio(i).Height = 17
grupo.Controls.Add(Radio(i))
fila.Read()
m = m + 96

If i = 4 Then m = 3 : n = 39
If i = 8 Then m = 3 : n = 62
If i = 12 Then m = 3 : n = 85
Next

javierkcjm:
hola amigo,

lo que creo que queires hacer es poner varios button y que cada uno represente a un cliente y dar click en uno de ellos y asi ejecutar acciones para ese cliente,

si es asi debes agregar eventos, agrega esta linea antes de el for
Dim evento As New EventHandler(AddressOf clickrb)

luego pones esta linea dentro del for despues del grupo.controlls.add()
AddHandler Radio(i).Click, evento

y luego creas una procedimiento llamado clickrb

Private Sub clickrb(ByVal sender As System.Object, ByVal e As System.EventArgs)
        MsgBox(CType(sender, RadioButton).Text)
    End Sub

con esto cada vez que des click en un radio button te mostrata el text que tiene

espero haberte ayudado

saludos cordiales

JC

aitord:
gracias. lo tengo.

aitord:
hola.
solo me falta un detalle, me funciona el evento siempre que pulso el radiobutton. pero necesito que vaya la primera vez tambien, es decir,
1.- creo los radiobutton en tiempo de ejecuccion,
2.- le asigno handler correspondiente.
3.- necesito que pase por el evento sin pulsar el radiobutton la primera vez.

no se si me explico ... gracias de todas formas.

 Private Sub radioX_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
        If CType(sender, RadioButton).Checked = True Then
        endif

javierkcjm:
hola,

en este ejemplo que te di se ejecuta por primera vez sin dar click en el radio button si quieres prueba poniendo un mensaje y veras que se ejecuta una 1 vez al iniciar el programa

saludos cordiales

JC

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa