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

Bectores de objetos

Estas en el tema de Bectores de objetos en el foro de Programación General en Foros del Web. Necesito crear un bector en Visual Basic 6.0 cuyos objetos sean de tipo label o text box y que cada objeto se visualice inmediatamente debajo ...
  #1 (permalink)  
Antiguo 30/04/2004, 15:39
 
Fecha de Ingreso: julio-2003
Ubicación: Donostia-San Sebastián
Mensajes: 129
Antigüedad: 20 años, 10 meses
Puntos: 0
Exclamación Bectores de objetos

Necesito crear un bector en Visual Basic 6.0 cuyos objetos sean de tipo label o text box y que cada objeto se visualice inmediatamente debajo del anterior. Cómo puedo realizar esto en tiempo de ejecución? Muchas gracias a todos
  #2 (permalink)  
Antiguo 01/05/2004, 06:39
 
Fecha de Ingreso: septiembre-2003
Mensajes: 172
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola, creo que era algo así:

Dim vLabels(4) as Object

set vLabels(1)=new label1 (label1 es una label que ya tengas inicializada en tiempo de diseño por ejemplo, asi te creará una copia de esa label con lo que te ahorras faena)

PD: tio con todo el buen rollito del mundo, pero se dice Vector con V!

Saludos!
__________________
Sr.Propio
  #3 (permalink)  
Antiguo 02/05/2004, 09:54
 
Fecha de Ingreso: julio-2003
Ubicación: Donostia-San Sebastián
Mensajes: 129
Antigüedad: 20 años, 10 meses
Puntos: 0
Ya he probado lo que me has dicho, pero al compilar me da el siguiente error: "no se ha definido el tipo por el usuario" justo en el punto en el que pone "new label1(el nombre de mi label)"
Además, luego necesito saber cómo hacer que me aparezca un label justo debajo de otro, porque utilizando la funcion "left", pero no me deja asignarle un balor nuevo. Gracias por toda la ayuda que puedas prestarme...
  #4 (permalink)  
Antiguo 02/05/2004, 13:04
 
Fecha de Ingreso: septiembre-2003
Mensajes: 172
Antigüedad: 20 años, 7 meses
Puntos: 0
Hola, lo siento, tenias razon, lo que te he mandado funciona con formularios, pero no con controles solo. Prueba esto, lo he probado con un formulario y ha funcionado bien.

Dim vLabels(5) As Label
Dim i As Integer
For i = 0 To 4
Set vLabels(i) = Controls.Add("VB.label", "label_" & i)
vLabels(i).Left = Label1.Left + (100 * (i + 1))
vLabels(i).Top = Label1.Top + (Label1.Height * (i + 1))
vLabels(i).Caption = "Label" & i
vLabels(i).Visible = True
vLabels(i).ZOrder 0
Me.Refresh
Next

Es solo un ejemplo pero creo que te servirá. Creo que la propiedad AutoRedraw del formulario tiene que estar a true.

Saludos!
__________________
Sr.Propio
  #5 (permalink)  
Antiguo 04/05/2004, 10:35
 
Fecha de Ingreso: julio-2003
Ubicación: Donostia-San Sebastián
Mensajes: 129
Antigüedad: 20 años, 10 meses
Puntos: 0
Siento el retraso, pero no había tenido tiempo de probarlo. Muchas gracias por tu ayuda. Funciona perfectamente. Lo que ocurre es que el vector de labels lo tengo dentro de un objeto de tipo SSTab y los label quedan escondidos detrás del SSTab. Sabes cómo puedo traerlos al frente en tiempo de ejecución? Muchas gracias por todo
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 22:15.