Hola
Bien tratare de ser claro :P
Ejemplo: dos botones
Botton1: me da un mensaje
Botton2: me da otros dos Bottones
Botton2.1: me da el mismo mensage que el Botton1
Botton2.2: me da otros dos Bottones
Y asi hasta el infinito y como es hasta el infinito por eso quiero que se creen y no esconderlos y despues mostrarlos que seria lo mas simple
se puede???
Definí el clic del boton para que cree dos botones con el construcor por copia, llamando a un método recursivo. Entonces a cada boton se le asigna el evento clic al mismo método que crea los dos botones... Una suerte de recursividad indirecta... Salu2
Ok muchas gracias
No te entendi bien pero voy a seguir investigando
Aunque si puedes poner un pequeño ejemplo o enlase o consejo lo que sea serias mi heroe
un saludo ^Ç^
Crear un sub que agrege ambos botones
sub menu()
dim b1 as new button
dim b2 as new button
b1.width=100 : b1.height= 30
b2.width=100 : b2.height= 30
b1.top = 0: b2.top = 0
b1.left = 0 : b2.left = b1.width + 10
me.controls.add(b1)
me.controls.add(b2)
addhandler b1.click,addressof mensaje
addhandler b2.click,addressof agrega
end sub
sub mensaje(yVal sender As System.Object, ByVal e As System.EventArgs)
msgbox "Este es elmensaje"
end sub
sub agrega(yVal sender As System.Object, ByVal e As System.EventArgs)
dim obj as new button
obj = ctype(sender,button)
dim to as integer = obj.top + obj.height + 10
dim b1 as new button
dim b2 as new button
b1.width=100 : b1.height= 30
b2.width=100 : b2.height= 30
b1.top = to: b2.top = to
b1.left = 0 : b2.left = b1.width + 10
me.controls.add(b1)
me.controls.add(b2)
addhandler b1.click,addressof mensaje
addhandler b2.click,addressof agrega
end sub
sub form_load (...)
menu
end sub
Espero que sirva y que no tenga ningun error porque lo he hecho de la volada, si necesitas alguna explicacion, me avisas,pòr ahora no ando entrando mucho al foro porque me han cortado el internet... wtf ... telefonica de *****....aaaa.... Recuerda agregar el sub en el load del formulario.
Saludos.
Muchas gracias a los dos :D :D :D
Me gustaria saber si funciono...
Pues no de el todo pero dejame seguirle la pista a tu code
cuando lo consiga lo posteare
En vista que recien me han restaurado mi internet ya puedo decirte que parte estuvo mal del codigo que postee, pues lo unico malo es que habia puesto una variable, para ser mas especifico to, solo la e reemplazado por tt. Aqui el code funcionando perfectamente testeado. Saludos
CitarPublic Class Form1
Sub menu()
Dim b1 As New button
Dim b2 As New button
b1.width = 100 : b1.height = 30
b2.width = 100 : b2.height = 30
b1.top = 0 : b2.top = 0
b1.left = 0 : b2.left = b1.width + 10
Me.controls.add(b1)
Me.controls.add(b2)
AddHandler b1.click, AddressOf mensaje
AddHandler b2.click, AddressOf agrega
End Sub
Sub mensaje(ByVal sender As System.Object, ByVal e As System.EventArgs)
MsgBox("Este es elmensaje")
End Sub
Sub agrega(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim obj As New Button
obj = CType(sender, Button)
Dim tt As Integer = obj.Top + obj.Height + 10
Dim b1 As New Button
Dim b2 As New Button
b1.Width = 100 : b1.Height = 30
b2.Width = 100 : b2.Height = 30
b1.Top = tt : b2.Top = tt
b1.Left = 0 : b2.Left = b1.Width + 10
Me.Controls.Add(b1)
Me.Controls.Add(b2)
AddHandler b1.Click, AddressOf mensaje
AddHandler b2.Click, AddressOf agrega
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
menu()
End Sub
End Class
Ya lo habia descubierto ;D ;D
Otra duda ¿como ponerle texto a los botones cambiarlos de color etc ? , ¿es igual como si fuera cualquier boton ? algo asi como
Me.Button1.Bakcolor = Color.Black
Salu2 y que bueno que restauraron el ser,vicio XDD
Claro para cambiar el fondo solo tienes que establecer la propiedad de los botones en este caso:
Citarb1.text = "Texto 1"
b2.text = "Texto 2"
Saludos.
Muchas gracias XD ahora si manos a la obra XDDD