Visual Basic - Array de controles

Life is soft - evento anual de software empresarial
 
Vista:

Array de controles

Publicado por Alfonso (103 intervenciones) el 21/03/2005 19:09:57
hola, mi problema viene dado cuando yo quiero liberar la memoria con la funcion unload de una posicion intermedia del array de controles ya que esa posicion queda eliminada y la estructura del array no puedo recorerla secuencialmente por ejemplo:
tengo el array con el indice 1-2-3-4 yo elimino la posicion 2 y el array queda 1-3-4 y cuando lo recorro secuencialmente y accedo a la posicion 2 me da un error porque no existe yo he intentado reorganizar el array pero al ser de controles no me deja hacerlo del tiron sino tengo que ir cambiando las propiedades una a una. ¿ ha una forma mas facil o como lo podria hacer?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Array de controles

Publicado por Mike79 (97 intervenciones) el 22/03/2005 20:17:00
Yo lo que hago es que tengo un arreglo, por ejemplo 1,2,3,4
y quiero eliminar el 2, entonces le doy unload al 2, y muevo el 4 al 2 y redimenciono el arreglo.

Asi de sencillo.
Espero sirva en tu caso.

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Array de controles

Publicado por Alfonso (1 intervención) el 22/03/2005 20:40:29
gracias mike.. pero que pagina mas fea tienes.
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Array de controles

Publicado por Mike79 (1 intervención) el 22/03/2005 21:43:17
Gracias a Dios tiene mas de 3 años que tengo tanto trabajo todo el tiempo, que no tengo tiempo para moverle a mi página web.

Algun día la pondre bonita, igual de bonita que las páginas que hago para la gente que me paga.

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Array de controles

Publicado por Alfonso (1 intervención) el 22/03/2005 21:59:05
tu pagina es la cara del trabajo que haces.. que pena.

Saludos.
Alfonso-.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Array de controles

Publicado por Mike79 (97 intervenciones) el 22/03/2005 23:35:16
No, esa es mi página personal. La página de mi empresa si esta bien.
La cara de mi empresa es la cara del trabajo que hago.
Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Array de controles

Publicado por Alfonso (103 intervenciones) el 22/03/2005 23:41:15
Muchas gracias!! No le hagas caso al alfonso ese que te esta criticando y que se hace llamar igual que yo. Gracias por la ayuda, pero si me lo pudieses explicar más detalladamente te lo agradecería. Gracias!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Codigo de Ejemplo

Publicado por Mike79 (97 intervenciones) el 23/03/2005 01:39:15
Alfonso me pidio un codigo de ejemplo ilustrando la idea, Asi que lo posteo en el foro, esperando que en el futuro a alguien le sirva:

La idea es mas o menos asi:

' Crea un control de texto
' y ponle la propiedad Index=0
' Tambien Crea un boton

Private Sub Command1_Click()
If Text1.Count <> 1 Then
If Text2.Text < Text1.Count Then 'Checa que no quieres borrar uno que no existe
Text1(Text2.Text) = Text1(Text1.UBound) ' Mueve el ultimo al lugar del que quieres borrar
Unload Text1(Text1.UBound) ' Borra el ultimo
End If
End If
End Sub

Private Sub Form_Load()
' Acomoda todos los componentes
Text1(0).Height = 375
Text1(0).Width = 2055
Text1(0).Top = 0
Text1(0).Left = 0
Text1(0).Text = "Texto: 0"
Text2.Text = 2
Text2.Top = 360
Text2.Left = 2280
Text2.Height = 375
Text2.Width = 500
Command1.Caption = "&Borrar"
Command1.Top = 960
Command1.Left = 2280
' Crea 4 text1 mas de forma dinamica.
For h = 1 To 4
Load Text1(h)
Text1(h).Top = 0 + (h * 500)
Text1(h).Left = 0
Text1(h).Text = "Texto: " + Str(h)
Text1(h).Visible = True
Next
End Sub

Saludos!
-
Miguel Angel
Mike79
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar