Histórico da Página
...
Informações | ||||
---|---|---|---|---|
| ||||
|
Conceito
...
Freeform é o conjunto de componentes para o desenvolvimento de novas funcionalidades e programas no Logix, podendo ou não possuir interface gráfica.
...
create_component()
set_property()
get_property()
Criando um componente (create_component)
...
A função AdvPL create_component
permite criar uma instância do componente Freeform em memória e retorna o código de referência do componente criado. Esta função recebe por parâmetro o código de referência do componente que será criado, o nome do componente Freeform e o código de referência do componente pai (quando existir).
Nota |
---|
Por padrão, o primeiro parâmetro não é mais informado, passando sempre nulo, assim o código de referência será criado dinamicamente pelo framework evitando problemas de referências duplicadas. |
Exemplo
Bloco de código | ||
---|---|---|
| ||
DEFINE l_dlg_ref VARCHAR(10) DEFINE l_pnl_ref VARCHAR(10) # Componente sem componente pai. LET l_dlg_ref = _ADVPL_create_componente(NULL,"LDIALOG") # Componente com componente pai. LET l_pnl_ref = _ADVPL_create_componente(NULL,"LPANEL",l_dlg_ref) |
Manipulando um componente (set_property e get_property)
...
As funções AdvPL set_property
e get_property
permitem executar e manipular métodos e propriedades do componente informado. A diferença entre uma função e outra é que com a get_property
é possível recuperar o valor da propriedade ou da execução do método informado, porém a set_property só permite alterar estas propriedades ou métodos.
...
Nota |
---|
Se a referência do componente informada estiver nula ou não for válida, será exibida uma mensagem de erro informado que “componente é inválido” e se o método informado também não for válido, a mensagem de erro irá informar “propriedade informada não prevista para o componente”. Mais informações sobre estas validações podem ser encontradas em Validações Metadado/Freeform. |
Exemplo
Bloco de código | ||||||
---|---|---|---|---|---|---|
| ||||||
DEFINE l_dlg_ref VARCHAR(10) DEFINE l_title CHAR(50) LET l_dlg_ref = _ADVPL_create_componente(NULL,"LDIALOG") # Define o título da janela. CALL _ADVPL_set_property(l_dlg_ref,"TITLE","VDP20000 – Manutenção de Pedidos") # Recupera o título definido acima. LET l_title = _ADVPL_get_property(l_dlg_ref,"TITLE") # Ativa a janela criada acima. CALL _ADVPL_set_property(l_dlg_ref,"ACTIVATE",TRUE) |