Usina BRGuía AdvPL
Ingresar
← Todos los temas
COMANDOPublicado

@ ... FOLDER

@ <nRow>, <nCol> FOLDER <oFolder> [OF <oWnd>] [PROMPTS <cItem,...>] [OPTION <nOption>] [SIZE <nWidth>, <nHeight>] [PIXEL]

Crea un contenedor TFolder con pestañas para organizar componentes visuales en una interfaz.

Interfaz visualFolderTFolderPestañasContenedoresComandos
01 · DESCRIPCIÓN GENERAL

Descripción general

El comando @ ... FOLDER crea un componente de agrupación con una o más pestañas. Durante la compilación se traduce al constructor New() de la clase TFolder. Las pestañas pueden declararse con PROMPT, PROMPTS o ITEMS, o agregarse posteriormente con AddItem(). Cada área interna está disponible mediante oFolder:aDialogs para crear controles distintos en cada pestaña.

02 · SINTAXIS

Sintaxis

@ <nRow>, <nCol> FOLDER <oFolder> [OF <oWnd>] [PROMPTS <cItem,...>] [OPTION <nOption>] [SIZE <nWidth>, <nHeight>] [PIXEL]

Parámetros

nRow, nCol
NuméricoObligatorio

Fila y columna donde se coloca el folder. Con PIXEL, las coordenadas parten de la esquina superior izquierda del componente padre.

oFolder
ObjetoObligatorio

Variable que recibe el objeto TFolder creado.

OF oWnd
ObjetoOpcional

Diálogo, panel u otro contenedor propietario del folder. OF es recomendado.

PROMPT / PROMPTS / ITEMS
CaractereOpcional

Títulos de las pestañas. Las expresiones se tratan internamente como una matriz.

OPTION nOption
NuméricoOpcional

Número de la pestaña seleccionada inicialmente.

SIZE nWidth, nHeight
NuméricoOpcional

Ancho y alto; deben definirse durante o después de la creación para una visualización correcta.

COLOR nClrText
NuméricoOpcional

Color del texto utilizado por el componente.

MESSAGE cMsg
CaractereOpcional

Ayuda contextual mostrada mientras el puntero permanece sobre el componente.

PIXEL
CláusulaOpcional

Indica que la posición y el tamaño utilizan coordenadas en píxeles.

03 · EJEMPLO PRÁCTICO

Pestañas declaradas con PROMPTS

#Include "TOTVS.ch"

User Function ExFolderPrompts()
    Local oDlg
    Local oFolder
    Local cNombre := Space(40)
    Local lActivo := .T.

    Define Dialog oDlg Title "Registro" ;
        From 0, 0 To 360, 620 Pixel

    @ 10, 15 Folder oFolder ;
        Prompts "General", "Preferencias" ;
        Option 1 Size 270, 140 Of oDlg Pixel

    @ 15, 15 Say "Nombre:" Of oFolder:aDialogs[1] Pixel
    @ 13, 55 Get cNombre Size 150, 10 ;
        Of oFolder:aDialogs[1] Pixel

    @ 15, 15 CheckBox lActivo Prompt "Registro activo" ;
        Size 100, 15 Of oFolder:aDialogs[2] Pixel

    Activate Dialog oDlg Centered
Return
Resultado esperado

PROMPTS crea dos pestañas. SAY y GET pertenecen a la primera; CHECKBOX pertenece a la segunda mediante aDialogs.

04 · EJEMPLO PRÁCTICO

Pestañas agregadas dinámicamente

#Include "TOTVS.ch"

User Function ExFolderDinamico()
    Local oDlg
    Local oFolder

    Define Dialog oDlg Title "Consulta" ;
        From 0, 0 To 320, 560 Pixel

    @ 10, 15 Folder oFolder Size 240, 120 ;
        Of oDlg Pixel

    oFolder:AddItem("Resumo", .T.)
    oFolder:AddItem("Detalhes", .T.)

    @ 10, 10 Say "Visão resumida" ;
        Of oFolder:aDialogs[1] Pixel
    @ 10, 10 Say "Informações detalhadas" ;
        Of oFolder:aDialogs[2] Pixel

    oFolder:SetOption(1)
    Activate Dialog oDlg Centered
Return
Resultado esperado

AddItem() crea las pestañas después del componente y SetOption(1) selecciona la primera.

BUENAS PRÁCTICAS
  • Incluye TOTVS.ch para que el compilador reconozca el comando.
  • Con PROMPTS, las pestañas se crean y nombran en la declaración.
  • Sin PROMPTS, utiliza AddItem() para agregar pestañas dinámicamente.
  • Crea los controles internos con OF oFolder:aDialogs[nPestaña].
  • Utiliza SetOption() para seleccionar una pestaña después de la creación.
  • Prefiere OF para identificar explícitamente el componente padre.
ERRORES COMUNES
  • El índice de aDialogs debe corresponder a una pestaña existente; confirma el orden de creación.
  • Acceder a aDialogs antes de crear las pestañas produce una referencia inválida.
  • Sin SIZE durante la creación o configuración posterior, el folder puede no mostrarse correctamente.
  • Sin OF, el folder se asocia a la ventana o diálogo activo.
  • Mezclar PIXEL con otra unidad puede colocar o dimensionar mal el componente.
  • Demasiadas pestañas o contenido excesivo reducen la claridad; agrupa información relacionada y usa títulos breves.

Contenido relacionado

REFERENCIAS
  1. TOTVS. @ ... FOLDER. TDN. Creado por Julio Wittwer; última modificación el 29 de mayo de 2019.
  2. TOTVS. TFolder:New y TFolder:AddItem — clase utilizada por el comando. TDN.
Estado
Publicado
Página creada el
Última revisión el
Idioma original
Portugués
Revisión
Usina.BR