Foros del Web » Programación para mayores de 30 ;) » .NET »

Array de controles...NET

Estas en el tema de Array de controles...NET en el foro de .NET en Foros del Web. Despues de buscar por mil sitios, y por esta web, he encontrado como hacer una especie de array de controles pero soy demasiado torpe y ...
  #1 (permalink)  
Antiguo 24/05/2005, 10:57
 
Fecha de Ingreso: abril-2005
Mensajes: 82
Antigüedad: 19 años, 9 meses
Puntos: 2
Array de controles...NET

Despues de buscar por mil sitios, y por esta web, he encontrado como hacer una especie de array de controles pero soy demasiado torpe y no lo entiendo.
Habría alguna alma caritativa que pudiese poner un ejemplo explicito??????

Mi caso es el siguiente, necesito cargar unas imagenes (picturebox) sacadas de una base de datos. y claro, no se cuantas hay, entonces necesito cargar imagenes dependiendo de lo que me de un select count.

A ver si alguien me puede ayudar, pooooooooooooooooorfi
  #2 (permalink)  
Antiguo 24/05/2005, 11:20
 
Fecha de Ingreso: junio-2002
Mensajes: 212
Antigüedad: 22 años, 7 meses
Puntos: 0
Dim bloque() As PictureBox

Dim rm As String
Do
i = i + 1
ReDim Preserve bloque(i)
bloque(i) = New PictureBox
rm = dbruta & "\fotos\" & MasterRs.Fields.Item("nombrefoto").Value

bloque(i).Image = New Bitmap(rm)

Me.Controls.Add(bloque(i))
MasterRs.movenext
Loop Until i=minumeroderegistros
__________________
Simuladores y Examenes Cisco, Herramientas de Red Online - Tecnologia y Redes
  #3 (permalink)  
Antiguo 24/05/2005, 11:23
 
Fecha de Ingreso: abril-2005
Mensajes: 82
Antigüedad: 19 años, 9 meses
Puntos: 2
no lo entiendo. me lo podrias explicar????
Se que pido mucho, sorry
  #4 (permalink)  
Antiguo 24/05/2005, 11:31
 
Fecha de Ingreso: junio-2002
Mensajes: 212
Antigüedad: 22 años, 7 meses
Puntos: 0
No hay problema, actualmente estoy tratando de esconder ventanas de aplicaciones externas en VBNET (en VB6 era facil) y no encuentro un pomo asi que se lo que se siente! :)
Lo que primero hacemos es definir el objeto que queremos crear asignandole un nombre, en mi caso bloque(), la variable que va a contener la ruta hacia la foto y la que va a contener el numero de fotos.

Dim bloque() As PictureBox
Dim rm As String, totalfotos as integer

Aca abris tu recordset. Yo uso ADODB nada de esos objetos del net que no hacen otra cosa que hacerte controldependiente.
Una vez que tenes el recordset abierto asigna el recordcount a la variable totalfotos (totalfotos=mirs.recordcount)

Ahora loopeamos la base.
Do
i = i + 1

'Creamos una instancia nueva del picturebox
ReDim Preserve bloque(i)
bloque(i) = New PictureBox

'Recuperamos el path hacia la foto qu equeremos cargar (aca pone el campo de tu base de datos, yo puse el que uso yo)
rm = dbruta & "\fotos\" & MiRs.Fields.Item("nombrefoto").Value

'Cargamos la imagen en el picturebox nuevo que acabamos de crear
bloque(i).Image = New Bitmap(rm)

'Ubicamos el picturebox nuevo en el form
Me.Controls.Add(bloque(i))

'Pasamos al proximo registro
MasterRs.movenext

'loopeamos hasta que I sea = al numero de fotos de la base
Loop Until i=totalfotos

Despues podes poner adentro bloque(i).top y .left para ir acomodandolos dentro del form, pero con eso tenes ya lo basico como para ir trabajando.

Igualmente te dejo un link a un ejemplo de creacion de arrays de objetos que subi a plante source code, miralo, te va a ayudar.
http://www.planet-source-code.com/vb...3507&lngWId=10
Abrazo
__________________
Simuladores y Examenes Cisco, Herramientas de Red Online - Tecnologia y Redes
  #5 (permalink)  
Antiguo 24/05/2005, 11:34
 
Fecha de Ingreso: abril-2005
Mensajes: 82
Antigüedad: 19 años, 9 meses
Puntos: 2
muchas gracias y perdona las molestias
  #6 (permalink)  
Antiguo 24/05/2005, 11:35
 
Fecha de Ingreso: junio-2002
Mensajes: 212
Antigüedad: 22 años, 7 meses
Puntos: 0
todo bien, cualquier cosa chiflame.
__________________
Simuladores y Examenes Cisco, Herramientas de Red Online - Tecnologia y Redes
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:50.