Páginas filhas
  • LGX - Expandir um grid desenvolvido em FreeForm

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Para permitir expandir um GRID (Componente LBrowseEx) em um painel do formulário, é preciso atentar para algumas características:

  • O GRID precisa ser instanciado em um LPANEL com propriedade ALIGN setada com valor "CENTER"
  • O painel precisa ser instanciado em um componente LLAYOUTMANAGER com propriedade EXPANSIBLE setada com o valor TRUE
  • Além do painel onde o GRID está instanciado ter ALIGN CENTER, o próprio GRID também deve ter a propriedade ALIGN setada como "CENTER".


O resultado destas características todas irá exibir um GRID no seguinte formato:

...

Bloco de código
languageruby
themeConfluence
firstline1
titleExemplo
linenumberstrue
 #Cria um componente de layout com 1 coluna (L_CONTAINER é a reference pode ser outro PANEL ou até mesmo LDIALOG ou outro componente que é considerado um container para outros componentes)
 LET l_layout_reference = _ADVPL_create_component(NULL,"LLAYOUTMANAGER",l_container_reference)
 CALL _ADVPL_set_property(l_layout_reference,"COLUMNS_COUNT",1)
 CALL _ADVPL_set_property(l_layout_reference,"MARGIN",FALSE)

 ### Para cada novo componente incluiso dentro do componente de layout que desejar expansão, é necessário setar EXPANSIBLE TRUE,
 ### pois essa propriedade fica inativa após cada adição de novo componente no componente de layout
 CALL _ADVPL_set_property(l_layout_reference,"EXPANSIBLE",TRUE)

 #Cria o componente PAINEL dentro do LAYOUT com alinhamento CENTER para ocupar todo espaço ainda disponivel
 LET l_panel_reference = _ADVPL_create_component(NULL,"LPANEL",l_layout_reference)
 CALL _ADVPL_set_property(l_panel_reference,"ALIGN","CENTER")

 #Cria o componente GRID com alinhamento CENTER para ocupar todo espaço disponivel no painel
 LET l_grid_reference = _ADVPL_create_component(NULL,"LBROWSEEX",l_panel_reference)
 CALL _ADVPL_set_property(l_grid_reference ,"ALIGN","CENTER")

...

Se for eliminada a propriedade ALIGN CENTER do GRID, pode-se definir a propriedade SIZE para o GRID, para determinar uma largura FIXA fixa desejada.