Duda, Tengo With LblDinamico = New Label(oContenedor) As "Etiqueta" [Solucionado]


Objetivo: Duda, Tengo With LblDinamico = New Label(oContenedor) As "Etiqueta" [Solucionado]
Tengo:

With lblDinamico = New Label(oContenedor) As "Etiqueta"

Tal como veo "Etiqueta" es una cadena, pero como es un label pues tengo la duda.

Si pongo:

Dim sNombre as String = "Etiqueta"

With lblDinamico = New Label(oContenedor) As sNombre ' Me da error de identificación

Si pongo:

Dim lbl as New Label

lbl.Name = "Etiqueta"

With lblDinamico = New Label(oContenedor) As lbl.Name


En fin estoy perdido, quiero poner un IF antes de With lblDinamico = New Label(oContenedor) As sNombre
Y poner dos cadenas a decidir. ¿como lo hago?

****************************************************************************
Solución
****************************************************************************
Dim sNombre as String = "Etiqueta"
With lblDinamico = New Label(oContenedor) As "" & sNombre & ""

última edición por gambafeliz el Viernes, 20 Septiembre 2019, 17:33; editado 2 veces
Perfil MP  
Objetivo: Re: Duda, Tengo With LblDinamico = New Label(oContenedor) As "Etiqueta" [Solucionado]
gambafeliz escribió: [Ver mensaje]
Tengo:

With lblDinamico = New Label(oContenedor) As "Etiqueta"

Tal como veo "Etiqueta" es una cadena, pero como es un label pues tengo la duda.

....
...


As "Etiqueta" no es una cadena. As "Etiqueta" crea un observador a los eventos de ese objeto llamado Etiqueta

Después de eso puedes observar los eventos de dicho objeto con, por ejemplo,

public sub Etiqueta_Click()

end

No tiene sentido esa sintáxis para observar los eventos de una clase "Normal" porque ya los observa su contenedor, o sea, el Form.

Saludos

Perfil MP  
Objetivo: Re: Duda, Tengo With LblDinamico = New Label(oContenedor) As "Etiqueta" [Solucionado]
gambafeliz escribió: [Ver mensaje]
Tengo:

With lblDinamico = New Label(oContenedor) As "Etiqueta"

Tal como veo "Etiqueta" es una cadena, pero como es un label pues tengo la duda.

....
...


shordi escribió: [Ver mensaje]

As "Etiqueta" no es una cadena. As "Etiqueta" crea un observador a los eventos de ese objeto llamado Etiqueta


No te estoy quitando la razón, doy por hecho que lo sabes firmemente. Pero, ¿es posible que As "Etiqueta" no sea mas que un pseudonimo o mote para nombrar al observador y no es mas que una cadena (nombre)?; Te pongo un ejemplo, en SQL ponemos SELECT SUM(Tabla) As Mote; como ya he dicho yo no se mas que tú, pero, ¿podria ser lo que acabo de explicar?

shordi escribió: [Ver mensaje]

No tiene sentido esa sintáxis para observar los eventos de una clase "Normal" porque ya los observa su contenedor, o sea, el Form.


Te pido disculpas pero no entiendo lo que has querido decir al respecto de "No tiene sentido esa sintaxis", ¿cual la de poner una variable String para dar nombre al observador?

Es que si es eso, para mi es necesario ya que creo etiquetas para ser observada con un evento y otras etiquetas para ser observada de una manera concreta y si son la misma no funcionaria mi código, pero lo que pasa es que las creo en un mismo sitio para ahorrar código.

Y si no es lo que digo pues entonces esto último pues no me he enterado. Perdón.

Gracias shordi por tu ayudita.

Saludos.

Perfil MP  
Objetivo: Re: Duda, Tengo With LblDinamico = New Label(oContenedor) As "Etiqueta" [Solucionado]
Citar:
Te pido disculpas pero no entiendo lo que has querido decir al respecto de "No tiene sentido esa sintaxis", ¿cual la de poner una variable String para dar nombre al observador?


Quiero decir que si en

With lblDinamico = New Label(oContenedor) As "Etiqueta"

oContenedor es un contenedor que está dentro del form donde creamos el label, es este mismo form el observador del label que se acaba de crear y no es necesario darle nombre. Con:

public sub lblDinamico_Click()

observamos los eventos del objeto.

Si oContenedor es otra clase de objeto, como otro formulario que es su propio observador, sí es necesario, porque será oContenedor quien observe los eventos de lblDinamico y desde el form que lo creó no tendremos acceso a ellos. En este caso al declarar el observador "Etiqueta" sí podremos acceder a dichos eventos.

Perfil MP  
Objetivo: Re: Duda, Tengo With LblDinamico = New Label(oContenedor) As "Etiqueta" [Solucionado]
[quote user="shordi" post="46456"]
Citar:

oContenedor es un contenedor que está dentro del form donde creamos el label, es este mismo form el observador del label que se acaba de crear y no es necesario darle nombre. Con:

public sub lblDinamico_Click()

observamos los eventos del objeto.

Si oContenedor es otra clase de objeto, como otro formulario que es su propio observador, sí es necesario, porque será oContenedor quien observe los eventos de lblDinamico y desde el form que lo creó no tendremos acceso a ellos. En este caso al declarar el observador "Etiqueta" sí podremos acceder a dichos eventos.


Osea se

Lo que me dices esto es en forma de pregunta es que:

oContenedor tiene sentido para darle un nombre, si es un Formulario que no contiene el LabelDinamico pero que si lo contiene entonces no es necesario poner el nombre. Y entonces ¿como lo llamo, simplemente LabelDinamico como se declaró?.

Si es así, tú si que me estas enseñando, mam ma mia. Gracias.

Lo voy a probar. Diooos!!!

Perfil MP  

Página 1 de 1


  
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

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4722s (PHP: -85% SQL: 185%)
Consultas SQL: 46 - Debug off - GZIP Activado