elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Problema al crear varios picturebox vía codigo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema al crear varios picturebox vía codigo  (Leído 2,441 veces)
Patxiku69

Desconectado Desconectado

Mensajes: 20


Ver Perfil
Problema al crear varios picturebox vía codigo
« en: 19 Enero 2013, 18:53 pm »

Buenas, tengo el siguiente problema:
Estoy intentando crear varios PictureBox desde código, pero al ejecutar el programa veo que me crea todos los PictureBox , pero solo aparece uno...
tengo hecho que entre cada PictureBox  deje 200px de distancia respecto al anterior, pero sigue apareciéndome solo uno.
PD: la ruta de imagen es correcta
Aquí les dejo el código:

Código
  1. For j = 0 To i - 1
  2.            Dim pcb As New PictureBox
  3.            pcb.Visible = True
  4.            pcb.ImageLocation = Path_imagenes(j)
  5.            pcb.Height = 150
  6.            pcb.Width = 150
  7.            pcb.Tag = Producto(j)
  8.            If contador_fil > 3 Then
  9.                contador_fil = 1
  10.                pos_y = pos_y + 200
  11.            End If
  12.            If contador_fil = 1 Then
  13.                pos_x = 0
  14.            End If
  15.            If contador_fil = 2 Then
  16.                pos_x = 200
  17.            End If
  18.            If contador_fil = 3 Then
  19.                pos_x = 400
  20.            End If
  21.            pcb.Location = New Point(pos_x, pos_y)
  22.            frmProductos.Controls.Add(pcb)
  23.        Next
  24.  


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.708



Ver Perfil
Re: Problema al crear varios picturebox vía codigo
« Respuesta #1 en: 19 Enero 2013, 19:12 pm »

El fallo lo tienes en esta comprobación:

Código
  1.            If contador_fil > 3 Then
  2.               contador_fil = 1
  3.               pos_y = pos_y + 200
  4.           End If

Si el contador es mayor que tres, tu cambias el valor a 1 y sumas la variable pos_y,
por lo tanto el valor de pos_y siempre será el mismo en todos los ciclos del búcle porque "contador_fil" siempre será "1", así que la comprobación donde sumas el valor de "pos_y" nunca se vuelve a comprobar/sumar...

Fíjate como así sí que funciona:

Código
  1.        Dim pos_x As Integer = 0
  2.        Dim pos_y As Integer = 0
  3.        Dim contador_fil As Integer = 4
  4.  
  5.        For j = 0 To 5 ' i - 1
  6.            Dim pcb As New Button
  7.            pcb.Height = 150
  8.            pcb.Width = 150
  9.            If contador_fil > 3 Then pos_y += 200
  10.            If contador_fil = 1 Then : pos_x = 0
  11.            ElseIf contador_fil = 2 Then : pos_x = 200
  12.            ElseIf contador_fil = 3 Then : pos_x = 400
  13.            End If
  14.                MsgBox(pos_y)
  15.                pcb.Location = New Point(pos_x, pos_y)
  16.                Me.Controls.Add(pcb)
  17.        Next

Saludos.


En línea


seba123neo


Desconectado Desconectado

Mensajes: 3.621


"No quiero creer, quiero saber" - Carl Sagan


Ver Perfil WWW
Re: Problema al crear varios picturebox vía codigo
« Respuesta #2 en: 19 Enero 2013, 19:17 pm »

otra cosa es que no hace falta hacer tantos if si vas a hacer una cuadricula, imaginte que seria una cuadricula de 500, tendrias que hacer 500 if, simplemente usa una variable que se vaya reseteando cada tantos items y operacion matematicas dentro del New Pont().
En línea

La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson
Patxiku69

Desconectado Desconectado

Mensajes: 20


Ver Perfil
Re: Problema al crear varios picturebox vía codigo
« Respuesta #3 en: 19 Enero 2013, 19:21 pm »

Okey, muchisimas gracias, ahora me funciona, le añadi tu codigo y un cont_fil +=1 ya que se me habia olvidado ponerselo :)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema: Añadiendo evento click a un Picturebox « 1 2 »
.NET (C#, VB.NET, ASP)
Patxiku69 11 5,980 Último mensaje 21 Enero 2013, 01:01 am
por Patxiku69
¿Ver el código captcha en un PictureBox?
.NET (C#, VB.NET, ASP)
Crazy.sx 3 2,615 Último mensaje 26 Mayo 2013, 21:17 pm
por .::IT::.
Crear PictureBox a través de una config .ini? « 1 2 3 4 »
.NET (C#, VB.NET, ASP)
z3nth10n 38 13,629 Último mensaje 22 Junio 2013, 21:28 pm
por z3nth10n
crear multiboot con grub4dos con varios OS
Software
xkiz ™ 5 1,361 Último mensaje 27 Octubre 2014, 10:04 am
por kochise
Como entrelazar varios .cpp y error de código
Programación C/C++
ToMMaC 4 1,427 Último mensaje 29 Enero 2016, 09:08 am
por ToMMaC
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines