¿Y en qué se diferencia de la clase Children?
Estoy intentando mejorar una serie de funciones que revisan todos los controles de un formulario y he visto que existe esa clase que no había visto nunca... pero no hay ni una pequeña ayuda de cómo usarla.
¿Alguien tiene alguna idea?
Saludos
(30-10-2022, 19:31)Shordi escribió: [ -> ]¿Alguien tiene alguna idea?
No tengo idea, TercoIDE es el de las clases

(30-10-2022, 22:18)tincho escribió: [ -> ]No tengo idea, TercoIDE es el de las clases
Estoy aprendiendo. Y tengo algunos problemas con los Children en mis programas. Se portan mal.
(31-10-2022, 15:15)tercoide escribió: [ -> ] (30-10-2022, 22:18)tincho escribió: [ -> ]No tengo idea, TercoIDE es el de las clases
Estoy aprendiendo. Y tengo algunos problemas con los Children en mis programas. Se portan mal.
Mándalos al rincón de pensar...

Que bueno.
ContainerChildren :This virtual class returns a virtual collection of all children of a container.
Propiedades: Count y Max
Métodos: Clear
Se puede asignar los hijos de un contenedor a un tipo ContainerChildren
GAMBAS
Dim hijos
As ContainerChildren
hijos = Panel1.Children
Print "El Panel1 tiene " & Str(hijos.
Count) & " hijos"
Print "Un hijo se llama: " & ob.
name
Y se puede asignar a un control mediante un tipo ContainerChildren y su indice.
GAMBAS
Dim hijos
As ContainerChildren
hijos = Panel1.Children
hcontrol = hijos[0]
Saludos
(30-10-2022, 19:31)Shordi escribió: [ -> ]Estoy intentando mejorar una serie de funciones que revisan todos los controles de un formulario y he visto que existe esa clase que no había visto nunca... pero no hay ni una pequeña ayuda de cómo usarla.
¿Pero que es lo que quieres hacer exactamente?
No es lo mismo una clase que un objeto.
Por ejemplo yo lo uso de la siguiente manera para asignar la imagen de un ToolButon que se encuentra dentro de un panel
GAMBAS
obj.
Picture = dsk.
TagPic(obj.
Tag,
32)
Otro ejemplo que es mas general y sirve para asignar la imagen a cada
ToolButton que exista en el formulario pero podrías adaptarlo a lo que requiera tu programa ya que al ser recursivo se llama a si mismo y continua hasta el ultimo control que encuentre en el formulario.
GAMBAS
chi.
Picture = dsk.
TagPic(chi.
Tag,
32) chi2.
Picture = dsk.
TagPic(chi2.
Tag,
32) RScan(chi2)
Shell, este código es muy útil, gracias. Espero que no te importe pero lo he modificado y añadido a la ayuda de
Gambas en Inglés
(02-11-2022, 22:37)tincho escribió: [ -> ]¿Pero que es lo que quieres hacer exactamente?
No es lo mismo una clase que un objeto.
Por ejemplo yo lo uso de la siguiente manera para asignar la imagen de un ToolButon que se encuentra dentro de un panel
GAMBAS
obj.
Picture = dsk.
TagPic(obj.
Tag,
32)
Sí, cosas así ya tengo hechas usando, como en el ejemplo, Children pero sigo sin entender la utilidad de ContainerChildren. Creí que podía ahorrame esos bucles y la recursividad si ContainerChildren incluía "de manera nativa" todos los children de todos los Container contenidos en el objeto inicial... pero ya veo que no.
La única utilidad que le veo es la posibilidad de pasar como referencia la clase Children "desligándola" del objeto padre... pero sigue siendo algo bastante oscuro.
Saludos