Test Foro de elhacker.net SMF 2.1

Programación => Programación General => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: Stakewinner00 en 17 Enero 2013, 16:39 PM

Título: Bucles
Publicado por: Stakewinner00 en 17 Enero 2013, 16:39 PM
Hola, tengo una duda que no pude resolver, busque por google  y nada.

Lo que me pasa es que quiero analizar por ejemplo 20 rectangulos y todos tienen un nombre tipo RectangleShape1 y lo que necesito es hacer un bucle que modifique el 1 hasta el 20 algo como este bucle que no me funciono.

La idea es hacer que veinte rectangulos o más se muevan de forma aleatorio y por eso necesito el bucle

Código (vbnet) [Seleccionar]
       For a As Integer = 1 To 4
           Dim aa = "RectangleShape" + a
           aa.left += 1
            RectangleShape+a+.Left += Aleatorio(1, -1)
           ' RectangleShape2.Left += Aleatorio(1, -1)

       Next a


Gracias!!
Título: Re: Bucles
Publicado por: $Edu$ en 17 Enero 2013, 17:11 PM
Ni siquiera con tu intento fallido de hacer eso lo haz hecho bien xD
Lee un buen tutorial de Visual Basic, pero leerlo y aprenderlo bien, no leer a la ligera...

Asumiendo que me haras caso y leeras un buen tutorial, te digo que le prestes atencion bien a la parte de Matrices o Arrays de Controles
Título: Re: Bucles
Publicado por: Stakewinner00 en 17 Enero 2013, 17:52 PM
Cita de: $Edu$ en 17 Enero 2013, 17:11 PM
Ni siquiera con tu intento fallido de hacer eso lo haz hecho bien xD
Lee un buen tutorial de Visual Basic, pero leerlo y aprenderlo bien, no leer a la ligera...

Asumiendo que me haras caso y leeras un buen tutorial, te digo que le prestes atencion bien a la parte de Matrices o Arrays de Controles

Me lei un libro de visual basic. Y me sirvio para comenzar.

No recuerdo si allí había algo sobre esto, lo voi a repasar pero creo que no había nada sobre esto
Título: Re: Bucles
Publicado por: $Edu$ en 17 Enero 2013, 19:53 PM
Busca sobre "el guille" que tiene un buen tutorial bastante completo.
Título: Re: Bucles
Publicado por: Stakewinner00 en 18 Enero 2013, 15:19 PM
Alguien me puede dar una pista? Por uqe ya busque pero no sale como poder haacer algo similar a esto.

CitarFor i = 1 To 3
            var = "RectangleShape" & i
        Next i
MSGBOX (var.location.y)
Título: Re: Bucles
Publicado por: $Edu$ en 18 Enero 2013, 15:34 PM
Ya te dije que hacer y luego que buscar...

No podes hacer eso que queres hacer, si tenes un TextBox1 no podes ir aumentando la parte del numero. Lo que tenes que hacer es crear un array de controles cosa que quede TextBox(0) el primero que creas y luego el segundo TextBox(1), etc, asi ahi si haces TextBox(i) en el bucle.
Título: Re: Bucles
Publicado por: raul338 en 18 Enero 2013, 15:52 PM
1º Eso es .net, ahora lo muevo al foro de .net
2º En .net no se pueden crear array de controles, puedes hacer que varios controles apunten a un msimo evento (identificalos por el sender), o puedes recorrer la propiedad  "Controls" del contenedor (te recomiendo meter todos esos "rectangulos" en un panel)

Recorrelos usando For Each
Título: Re: Bucles
Publicado por: $Edu$ en 18 Enero 2013, 16:08 PM
Hola Raul tanto tiempo! me confundi porque como estaba en visual basic pensaba que era vb6 ademas de que no preste mucha atencion a su codigo porque a simple vista ya estaba mal, debi ver esa declaracion mas cuidadosamente xD
Título: Re: Bucles
Publicado por: Eleкtro en 18 Enero 2013, 16:42 PM
Código (vbnet) [Seleccionar]
Public Class Form1

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

       Me.Size = New Point(600, 600)
       Dim Rando As New Random

       ' Creo los controles y los añado al form, para este ejemplo.
       Dim Button_(10) As Button
       For num = 0 To 10 : Button_(num) = New Button : Me.Controls.Add(Button_(num)) : Next

       For Each Control In Me.Controls
           If Control.GetType.ToString.Contains("Button") Then ' Si el control es de tipo Button...
               Control.location = New Point(Rando.Next(1, 500), Rando.Next(1, 500)) ' Los coloco aleatóriamente
           End If
       Next
   End Sub

End Class
Título: Re: Bucles
Publicado por: Stakewinner00 en 18 Enero 2013, 19:06 PM
Gracias a todos, ya lo arregle de una forma similar a la de EleKtro H@cker.

PD:Eso estaba seguro que si que era visual basic 2008, como minimo cuando recupere windows me descargue Microsoft visual basic 2008. Si no es visual basic tendré que repasar las bases.


Título: Re: Bucles
Publicado por: $Edu$ en 18 Enero 2013, 19:10 PM
Esque Visual basic 2008 es de .NET, pero despues esta el Visual basic 6 que es donde habias creado tu tema, y es una version mas vieja de VB que no usa la plataforma NET framework, por lo tanto no tiene miles de funciones como vb.net y no es orientada a objetos.
Título: Re: Bucles
Publicado por: Stakewinner00 en 18 Enero 2013, 20:11 PM
A, gracias por aclararme las dudas para futuros posts.

Yo vi visual basic y pensé que ya estaba bien colocado.