Saltar al contenido principal
Un Grupo es una colección de varios elementos (denominados subelementos). A su vez, los subelementos pueden ser elementos de grupo. Los elementos de grupo se marcan con Icono de elemento de grupo en el árbol de FlexiLayout.
Los elementos de grupo también incluyen: Encabezado, Pie de página, Primero encontrado y Grupo repetido. Use los elementos Encabezado y Pie de página para detectar el principio y el final de un documento. Los elementos Encabezado y Pie de página solo pueden aparecer una vez cada uno en un documento. Grupo repetido es un elemento de grupo recurrente. Un elemento Campo etiquetado también puede representarse como un elemento compuesto.

Cómo se detectan los elementos de grupo

Si es necesario, puede especificar el número mínimo de subelementos que deben detectarse. Si al aplicar FlexiLayout se detectan menos elementos, el elemento compuesto se considerará no detectado. Un elemento de grupo, al igual que un elemento simple, puede ser obligatorio, opcional o prohibido. Si un elemento de grupo opcional incluye un elemento obligatorio, el hecho de no encontrar coincidencia entre este elemento y un objeto dará como resultado una hipótesis nula para el elemento de grupo, y el programa seguirá intentando hacer coincidir el FlexiLayout. Asegúrese de no dejar elementos compuestos vacíos (es decir, elementos compuestos sin subelementos). Si el programa encuentra un elemento compuesto vacío al compilar un FlexiLayout, mostrará un mensaje de advertencia. Si su FlexiLayout no usa los elementos compuestos Encabezado y Pie de página, que se agregan de forma predeterminada, elimine estos elementos redundantes.

Cuándo usar elementos de grupo

Los elementos de grupo son útiles en los siguientes casos:
  • Para facilitar las pruebas de partes independientes de un FlexiLayout. Por ejemplo, un FlexiLayout compuesto por 100 elementos puede incluir solo 3 elementos de grupo: el título, el cuerpo y la parte inferior del documento. Cada uno de estos tres elementos de grupo contendrá elementos de grupo que describen partes más pequeñas del documento. Este enfoque no solo limita el número de variantes posibles que deben considerarse, sino que también facilita la depuración del FlexiLayout, ya que cada grupo puede editarse y probarse de forma independiente.
  • Para facilitar la navegación en el árbol de FlexiLayout.
  • Para reducir el número de hipótesis de elementos y, de este modo, acelerar la formulación de la hipótesis final. Agrupar elementos permite al programa considerar un conjunto de elementos como una sola unidad, para la cual se ha formulado una única hipótesis (aunque esté compuesta por las hipótesis de los subelementos) y cuya calidad puede calcularse. Dentro del grupo se consideran varias combinaciones de hipótesis de subelementos, y solo se utiliza un número determinado de las mejores hipótesis de grupo en la búsqueda descendente por el árbol. El número predeterminado de mejores hipótesis para un elemento de grupo es 1.
    No se recomienda aumentar el número máximo de hipótesis, ya que esto puede provocar un crecimiento incontrolable del árbol e impedir que el FlexiLayout coincida con las imágenes.
  • Para especificar una restricción de búsqueda común a todos los subelementos. El área de búsqueda de un elemento concreto se calculará como la intersección entre el área de búsqueda especificada en el subelemento y el área de búsqueda de todo el grupo.
    A veces, la intersección entre el área de búsqueda de un elemento de grupo y uno de sus subelementos puede estar vacía, y el programa no podrá encontrar el subelemento. Intente especificar solo relaciones simples para los elementos de grupo, por ejemplo, Above: PageRect.Top + PageRect.Height/2; (es decir, “busque el elemento en la mitad superior de la imagen”), o no especifique ninguna relación en absoluto.