Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Problemas Con Botones Y Etiquetas Generad@s Por Codigo SOLUCIONADO
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Problemas Con Botones Y Etiquetas Generad@s Por Codigo SOLUCIONADO 
 
Os pongo el código que tengo, en principio no da problemas, me genera los botones y etiquetas perfectamente.

Mi pregunta es :
¿ Cómo puedo aceder a las propiedades de (Eti) desde btnTerminal_Click() ?
Gracias de antemano, llevo 3 dias yno lo consigo.

PUBLIC PROCEDURE NuevoBoton()  
 DIM X AS Integer = 0 ' Puedes establecer una posición inicial  
 DIM Y AS Integer = 35 ' Puedes establecer una posición inicial  
 DIM i, q AS Integer
 DIM btn AS Button ' En este caso es un botón
 DIM Eti AS Label ' En este caso es un botón
 
 FOR i = 0 TO 5
  btn = NEW Button(ME) AS "btnTerminal"
  Eti = NEW Label(ME) AS "EtiquetaReloj"
' Se crea un botón en el form, que será parte del grupo btnTerminal
  btn.X = X
  btn.Y = y
  btn.W = 32
  btn.H = 32
  q = i + 1
  btn.Text = "T" & q
  btn.BackColor = &5FFF5F
  Eti.Visible = FALSE
  Eti.ForeColor = &HFFFF3F
  Eti.name = "Terminaĺ" & q
  Eti.Text = "Terminaĺ" & q
  Eti.x = 40
  Eti.Y = btn.Y
  y += 32 ' Se aumenta y
 NEXT
  
END

PUBLIC SUB btnTerminal_Click()
  SELECT CASE LAST.tag 'last.tag es el botón pulsado
      CASE 1
      ' CASE 2
      ' CASE 3
  END SELECT
END
 



 
última edición por desoljor el Viernes, 18 Febrero 2011, 11:18; editado 1 vez 
desoljor - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Botones Y Etiquetas Generad@s Por Codigo 
 
cometí un error. Ahora lo corrijo, entendí mal la pregunta.

Yo lo haría mediante un array de objects creados a nivel de clase para que sean visibles en toda la clase. Para no liar lo mas sencillo es guardar el índice en el tag, pero como has usado el tag para otra cosa otro sitio donde tienes el índice es en el número que guardas en el text. Si el número es 1 el índice es 0. Si el número es 7 el índice es 6.
private Botones as new object[]
private Etiquetas as new object[]
 

En el bucle incluir los controles en los arrays correspondientes.
FOR i = 0 TO 5
  btn = NEW Button(ME) AS "btnTerminal"
  botones.add(btn)

  Eti = NEW Label(ME) AS "EtiquetaReloj"
  Etiquetas.add(Eti)
  ...
  ...

Ahora tienes un array de botones y otro de etiquetas. Si pulsan el botón dos tu tienes que ir al array de etiquetas y coger el 2.
PUBLIC SUB btnTerminal_Click()
dim Numero as integer
Numero=cint(mid(last.text,2)) 'coger los caracteres a partir de la posicion 2 y convertirlos a integer
  SELECT CASE LAST.tag 'last.tag es el botón pulsado
      CASE 1
      ' CASE 2
      ' CASE 3
  END SELECT
  print etiquetas[Numero].text 'acceder al text de la etiqueta que tenga por índice el Numero
END

 



 
última edición por soplo el Martes, 15 Febrero 2011, 21:36; editado 2 veces 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Botones Y Etiquetas Generad@s Por Codigo 
 
Si tienes que acceder a las eti que tienen estan en el mismo orden de creación que los botones, porque no te creas sendos array de Objects y el indice del boton pulsado, se correspondera con el indice de la etiqueta?

De este modo, siempre puedes recorrer el array y seleccionar la etiqueta que te interese por su name. Tambien puedes hacer una pequeña funcion que recorra los controles hijo del contenedor y te devuelva un objeto label que es sobre el que quieras trabajar.

Depende de que quieras hacer con Eti, hay varias posibilidades

Antonio
 



 
última edición por ahtonio el Martes, 15 Febrero 2011, 21:40; editado 1 vez 
ahtonio - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Botones Y Etiquetas Generad@s Por Codigo 
 
Gracias por tu respuesta, me ha venido muy bien.

Ahora el problema es que no me deja trabajar con los botones que he creado. un ejemplo bien sencillo

PUBLIC SUB Button1_Click()

 Button1.BackColor = &FF0000

END

teniendo en cuenta que cuando los ceo btn.Name = "Button" & i

Si por ejemplo quiero cambiarle el color del boton ejecutaria el código de arriba pero no lo hace.
 



 
desoljor - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Botones Y Etiquetas Generad@s Por Codigo 
 
last.backcolor=&FF0000
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con Botones Y Etiquetas Generad@s Por Codigo SOLUCIONADO 
 
Gracias a todos por vuestra ayuda
 



 
desoljor - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Como Asocio Botones Creados Con Condigo A ... CanihoJR Controles/Librerías/Componentes 2 Viernes, 08 Julio 2011, 19:57 Ver último mensaje
CanihoJR
No hay nuevos mensajes Agregar Evento A Un Array De Botones Cread... CanihoJR General 6 Lunes, 11 Julio 2011, 21:52 Ver último mensaje
soplo
No hay nuevos mensajes Borrar Botones Creados Por Codigo? CanihoJR General 4 Jueves, 03 Noviembre 2011, 15:27 Ver último mensaje
CanihoJR
No hay nuevos mensajes Problemas Con Etiquetas De Goto v3ctor Aplicaciones/Fragmentos de Código 24 Martes, 12 May 2015, 14:23 Ver último mensaje
vuott
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron