Cambiando posición de un control aleatoriamente !

Iniciado por TrashAmbishion, 29 Agosto 2016, 21:01 PM

0 Miembros y 1 Visitante están viendo este tema.

TrashAmbishion

Hola,

Estoy tratando de mover un Label dentro de las dimensiones de un Form, con el siguiente código pero estoy obteniendo un error de que debe ser un valor positivo en la parte de r.Next...

Código (vbnet) [Seleccionar]


Dim r As New Random()

            Dim x As Integer = r.Next(Me.ClientRectangle.Height - Label1.Width)
            Dim y As Integer = r.Next(Me.ClientRectangle.Height - Label1.Height)
            Dim p As New Point(x, y)

            Me.Label1.Location = p

        End If



Gracias cualquier ayuda..

Salu2

Eleкtro

#1
Cita de: TrashAmbishion en 29 Agosto 2016, 21:01 PMestoy obteniendo un error de que debe ser un valor positivo en la parte de r.Next...

El propio error te está diciendo donde tienes el fallo, al realizar alguna de estas restas estás obteniendo un valor negativo:

Cita de: TrashAmbishion en 29 Agosto 2016, 21:01 PMDim x As Integer = r.Next(Me.ClientRectangle.Height - Label1.Width)
Dim y As Integer = r.Next(Me.ClientRectangle.Height - Label1.Height)

...pero el parámetro de la función Random.Next(Int32) espera un valor positivo, puesto que el valor por defecto de "minValue" es 0 (a menos que le especifiques lo contrario), el valor de "maxValue" debe ser mayor o igual que 0.

Saludos








TrashAmbishion

Lo solucione

Math.Abs

de todas formas estoy viendo a ver como lo mejoro..

Salu2