Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Problemas Con La Colección Me.Controls
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Problemas Con La Colección Me.Controls 
 
Tengo la siguiente jerarquía de objetos:
formulario A
    workspaces
        formulario B
 
Suponiendo que el nombre del formulario b fuese formub, si coloco este código en un evento de formulario A:

dim f as object

f=ME.Controls["formub"]

 


f siempre es NULL

Sin embargo si el código es:

dim f as object
for each f in ME.Controls
    if f.Name="formub" then
      break
   endif
next

 


f es una referencia a formub

El tema me tiene perplejo. ¿Es una peculiaridad de la clase workspaces? ¿ME.Controls no es realmente una colección? ¿Alguien sabe algo de esto? ¿A qué huelen las nubes?

Gracias.
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
Jejeje, acabo de responder a un novato que se mire "cómo hacer preguntas inteligentes" para obtener respuestas y yo no soy capaz de que nadie me conteste... Nunca acaba uno de aprender...
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
No te desanimes así!!! Puede (como es mi caso) que no podamos ayudarte porque sencillamente no conocemos la respuesta... Y en dicha circunstancia es mejor guardar silencio... silencio que rompo para hacer esta aclaración...

Ciertamente raro lo que preguntas...

Nunca he tenido esa situación... pero la collection que mencionas, va agregando automáticamente los objetos dentro de ella a medida que los creas (pregunto porque en código no se ve que los agregues a la misma)...
 



 
santijav - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
No, el código es un ejemplo, no el código real (que es demasiado largo para ponerlo aquí). Sin embargo lo he depurado cientos de veces y no hay manera, me.controls contiene el elemento que busco, pero no le vale la referencia...
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
Hola a todos

Digo lo mismo que santijav, nunca he usado el control workspaces, por eso no me he aventurado a contestar.
Sin embargo, aunque no está muy claro el planteamiento inicial, entiendo que en un formulario padre tienes un contenedor workspace, el cual a su vez es el padre de los formularios que contiene.

A mi modo de ver, ME, en este caso es parent del workspace y a su vez "abuelo" de los formularios del workspace. Por lo que desde Me.controls no puedes acceder directamente a los formularios del workspaces, que supongo estarán en otra colección más profunda, su propia colección.

|_ Formulario A
   !__ Workspace
        |_ formB
        |_ formC
        |_ formN


De este modo se me ocurre, esta podría ser la forma de acceder:

dim f as object

f=ME.Controls["Workspace1"]["formB"]

 


No me he dignado siquiera a probarlo, es un poco tirarme a la piscina sin flotador, jeje...

[EDITO]

He visto que en realidad la forma de acceder a la lista de ventanas dentro del workspace es mediante su propiedad .children, que devuelve un array de Objetos. Así que posiblemente la notación f=ME.Controls["Workspace1"][indice] pueda funciionar.

http://gambasdoc.org/help/comp/gb.form.mdi/workspace/children

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
última edición por jguardon el Viernes, 22 Julio 2011, 18:40; editado 1 vez 
Editado por Invitado, Jueves, 01 Enero 1970, 01:00:
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
Efectivamente, Jesús, Se puede alcanzar a formub a través de los children del workspace... pero si haces un testeo a la colección me.controls:

dim c as control
for each c in me.controls
  print C.Name
next
 

Aparecen sin problemas Formb y formc pletóricos de vida y salud.

Por eso, la segunda opción que planteo en el post:

dim f as object
for each f in ME.Controls
   if f.Name="formub" then
     break
  endif
next
 

Funciona perfectamente, lo cual no entiendo...
 




===================
No podemos regresar
 
última edición por shordi el Viernes, 22 Julio 2011, 19:51; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
Es una cuestión que merece la pena preguntar a "Benito" directamente, a través de la lista.  

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
Citar:

El tema me tiene perplejo. ¿Es una peculiaridad de la clase workspaces?

Me parece que no, sino que es un problema en la implementación del acceso a la colección Controls de Form: durante la enumeración se itera sobre el conjunto de todos los controles incluidos los "hijos", pero al recuperar sus elementos mediante claves no.

Citar:

¿Alguien sabe algo de esto?

Benoit seguro que sí.

Citar:

 ¿A qué huelen las nubes?

Bueno, ésta creo que te la puedo responder ya que varias veces pude estar en la montaña mientras pasaban las nubes y... huele a nube

En realidad, recuerdo que en esos momentos sentía un leve frío húmedo y un tenue aroma que no sé cómo describir, pero que no es propio de la nube sino que es como cuando llueve en el campo y "se siente el olor a lluvia" o mejor dicho a la tierra mojada.

Saludos.

PD. El acceso a los controles contenidos en el Workspace se puede hacer mediante Controls así:

  DIM f AS Object

  f = Me.Controls["Workspace1"] ' se realiza el casting a Object
  f = f.Children[0] 'Obtiene el formulario incrustado en el Workspace

  'También se podría hacer:
  f = f.Children[0].Children[Indice] ' para acceder al control que corresponde a Indice contenido en el formulario incrustado en el Workspace

 'no se puede acceder directamente porque Controls devuelve el tipo "Control" que no tiene definida la propiedad Children

  ME.Controls["Workspace1"].Children[0] ' daría error
  

 

 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
última edición por fabianfv el Sabado, 23 Julio 2011, 03:20; editado 1 vez 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Problemas Con La Colección Me.Controls 
 
je, je,je, lo que son las referencias culturales eso de que "a qué huelen las nubes" es una pregunta idiota que hacían aquí en españa en un anuncio de compresas Evax... y que dio lugar a toda una subcultura de bromitas machistas....
 



 
shordi - 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 Invirtiendo Una Colección Shell General 3 Martes, 27 May 2014, 09:28 Ver último mensaje
jsbsan
No hay nuevos mensajes Colección Anidada Shell General 4 Martes, 28 Junio 2016, 18:46 Ver último mensaje
Shell
No hay nuevos mensajes Consideraciones Sobre Gambas Experimental ... shordi General 0 Domingo, 27 Noviembre 2016, 11:38 Ver último mensaje
shordi
No hay nuevos mensajes Gambas Experimental Controls: Estructura Y... shordi Aplicaciones/Fragmentos de Código 0 Domingo, 27 Noviembre 2016, 11:59 Ver último mensaje
shordi
 

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