Histórico da Página
...
Procedure | Parâmetros | Descrição | Exemplo/Utilização | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
addNode |
O pcOptn é uma lista de parâmetros que sao separados por chr(1). Valores válidos para o pcOtn:
| Adiciona um node no treeview. Se o node for adicionado a um node pai, ele será o último filho. | DO ON ERROR UNDO, LEAVE: RUN addNode IN h-treeview ("n1","","node 1","","") NO-ERROR. RUN addNode IN h-treeview ("n2","","node 2","","expanded") NO-ERROR. RUN addNode IN h-treeview ("n21","n2","node 21","","") NO-ERROR. RUN addNode IN h-treeview ("n22","n2","node 22","image/treeview/book02.bmp","expanded"). RUN addNode IN h-treeview("n221","n22","node 221","image/treeview/book02.bmp",""). RUN addNode IN h-treeview ("n222","n22","node 222","image/treeview/book02.bmp",""). RUN addNode IN h-treeview ("n3","","node 3","image/treeview/present1.bmp","expanded"). RUN addNode IN h-treeview ("n31","n3","node 31","image/treeview/$.bmp",""). RUN addNode IN h-treeview ("n4","","node 4","image/treeview/smile56.bmp",""). END. | ||||||||||||||||||||||||||||||||||||||||||||
applyEntry | Passar o parâmetro vazio ("") | Faz um entry no treeview | RUN applyEntry IN h-treeview (INPUT ""). | ||||||||||||||||||||||||||||||||||||||||||||
deleteNode |
| Elimina um node de uma chave especificada. | RUN deleteNode IN h-treeview (c-codigo-node, "refresh"). | ||||||||||||||||||||||||||||||||||||||||||||
destroyObject | Elimina o treeview da memória. | IF VALID-HANDLE(h-treeview) THEN DO: RUN destroyObject IN h-treeview. DELETE PROCEDURE h-treeview NO-ERROR. END. | |||||||||||||||||||||||||||||||||||||||||||||
emptyTree | Zera o conteúdo da treeview. | RUN emptyTree IN h-treeview NO-ERROR. | |||||||||||||||||||||||||||||||||||||||||||||
enableObject | Habilita o treeview | RUN enableObject IN h-treeview NO-ERROR. | |||||||||||||||||||||||||||||||||||||||||||||
expandBranch |
| Expande o node e todos os filhos dele | RUN expandBranch IN h-treeview (c-codigo-node) NO-ERROR. | ||||||||||||||||||||||||||||||||||||||||||||
getFrameTreeview |
| Retorna o handle da frame do treeview | RUN getFrameTreeview IN h-treeview (OUTPUT hFrameTV). | ||||||||||||||||||||||||||||||||||||||||||||
getNodeDetails |
| Retorna detalhes de um node do treeview | RUN getNodeDetails IN h-treeview (c-codigo-node, OUTPUT hNdBf). MESSAGE DELETE OBJECT hNdBf. | ||||||||||||||||||||||||||||||||||||||||||||
initializeObject | Inicializa o treeview | RUN initializeObject IN h-treeview. | |||||||||||||||||||||||||||||||||||||||||||||
moveNode |
| Move um node origem como filho de outro node destino. Caso o pcMode = "parent" e o node destino seja em branco, ele jogara o node origem como o último node do nível 0. | RUN moveNode IN h-treeview (c-codigo-node, c-codigo-node-pai, "after", "refresh") NO-ERROR. | ||||||||||||||||||||||||||||||||||||||||||||
updateNode |
Para remover um item do pcOptn existente, coloque "!" na frente da opção, conforme o exemplo abaixo: pcOptn="!font" A opção acima removerá o fonte definido para o node. | Atualiza o label, icone ou a lista de opcoes de um determinado node. | RUN updateNode IN h-treeview (c-codigo-node, "", "", cFgColor) NO-ERROR. |
...
Foi disponibilizado o include ut-treeview-i para facilitar a utilização do TreeView, onde possui das seguintes variaveis e procedures:
Variável | Tipo | Descrição |
---|---|---|
h-treeview | Handle | Contem o handle da instância do treeview |
h-Node | Char | Contem o pcKe do node selecionado |
c-codigo-node | Char | Contem o pcKe do node selecionado |
cImage | Char | Contem a imagem que será apresentada no node |
cFgColor | Char | Contem a cor de frente do node |
cFont | Char | Contem o código da fonte utilizada no node |
cExpClp | Char | Expande ou fecha o node |
Procedure | Parâmetros | Descrição | Exemplo/Utilização | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
pi-atualizaTreeview | Faz uma atualização/refresh do treeview. | RUN pi-atualizaTreeview. | |||||||||||||||||||||||||
pi-create-node |
| Adiciona um node no treeview. Esta procedure chama a addNode. | DO ON ERROR UNDO, LEAVE: RUN pi-create-node ("n1","","node 1","","") NO-ERROR. RUN pi-create-node ("n2","","node 2","","expanded") NO-ERROR. END. | ||||||||||||||||||||||||
pi-update-node |
| Atualiza o label, icone ou a lista de opcoes de um determinado node. Esta procedure chama a updateNode. | RUN pi-update-node (c-codigo-node, "", "", cFgColor) NO-ERROR. | ||||||||||||||||||||||||
tvNodeEvent |
| Procedure auxiliar que é assinada no treeview, onde todos os eventos que ocorrerem no treeview chamarão esta procedure. Voce não precisa chamar esta procedure diretamente, pois quem irá chamá-la é o treeview. Nesta procedure serão alimentados as variáveis c-codigo-node e h-node com o pcNodeKey, que é a chave do node selecionado. | |||||||||||||||||||||||||
pi-ClickTreeview | Esta é uma procedure que é chamada pelo tvNodeEvent e deve ser criada no seu programa, pois neste ponto que você deverá |
utilizar o c-codigo-node e h-node, que é a chave do node, e fazer os seus procedimentos necessários para atualizar frames e |
utilizar o node selecionado |
02. EXEMPLO DE UTILIZAÇÃO
. |
Card documentos | ||||
---|---|---|---|---|
|
Card documentos | ||||
---|---|---|---|---|
|
04. EXEMPLO DE UTILIZAÇÃO
Estamos disponibilizando um exemplo de um programa com thin-templates que utiliza esse componente de treeview.
View file name wmainten.w height 250
Bloco de código |
---|
// iniciando o treeview {utp/ut-treeview.i} // no afterDisplayFields voce inicializa o componente treeview PROCEDURE afterDisplayFields : IF NOT VALID-HANDLE(h-treeview) THEN DO: RUN utp/ut-treeview.w PERSISTENT SET h-treeview. RUN initializeObject IN h-treeview. SUBSCRIBE TO "tvNodeEvent" IN h-treeview. RUN repositionObject IN h-treeview ( 2.65 , 1.30 ) NO-ERROR. RUN resizeObject IN h-treeview ( 14.35 , 28.00 ) NO-ERROR. END. END PROCEDURE. // esta procedure sera executada toda vez que ocorrer um evento de click em um determinado nó PROCEDURE pi-ClickTreeView : END PROCEDURE. |
04. INCLUDE DE EVENTOS
- Definição de variáveis utilizadas para utilização do TreeView, que são:
Bloco de código |
---|
DEFINE VAR h-treeview AS HANDLE NO-UNDO. // handle do treeview DEFINE VAR h-Node AS CHARACTER NO-UNDO. // handle de um nó DEFINE VAR MESSAGE c-codigo-node VIEW_AS CHARACTER NO-UNDO. // DEFINE VAR cImage AS CHARACTER NO-UNDO. // DEFINE VAR cFgColor AS CHARACTER NO-UNDO. // DEFINE VAR cFont AS CHARACTER NO-UNDO. // DEFINE VAR cExpClp AS CHARACTER NO-UNDO. // |
- Temos também as seguintes procedures:
Bloco de código |
---|
// Criação de um Nó PROCEDURE pi-create-node : DEFINE INPUT PARAMETER cChave AS CHARACTER NO-UNDO. // chave a ser utilizada para o nó DEFINE INPUT PARAMETER cParent AS CHARACTER NO-UNDO. // chave do pai DEFINE INPUT PARAMETER cText AS CHARACTER NO-UNDO. // texto a ser apresentado no nó DEFINE INPUT PARAMETER cImage AS CHARACTER NO-UNDO. // imagem a ser apresentada DEFINE INPUT PARAMETER cParam AS CHARACTER NO-UNDO. // parâmetros do nó END PROCEDURE. // Atualização de um nó PROCEDURE pi-update-node : DEFINE INPUT PARAMETER cChave AS CHARACTER NO-UNDO. // chave do nó a ser alterado DEFINE INPUT PARAMETER cFieldName AS CHARACTER NO-UNDO. // nome do campo DEFINE INPUT PARAMETER cFiledValues AS CHARACTER NO-UNDO. // DEFINE INPUT PARAMETER cParam AS CHARACTER NO-UNDO. // parâmetros do nó END PROCEDURE. // Evento de click em um determinado nó // sempre que for selecionado sobre um nó ele fará: // - preencher as variaveis c-codigo-node e h-node com a chave do nó // - executar a procedure pi-ClickTreeView PROCEDURE tvNodeEvent : DEFINE INPUT PARAMETER pcEvent AS CHARACTER NO-UNDO. // evento que ocorreu sobre o nó DEFINE INPUT PARAMETER pcnodeKey AS CHARACTER NO-UNDO. // chave do nó END PROCEDURE. // Atualiza o treeview PROCEDURE pi-atualizaTreeview : ALERT-BOX. END PROCEDURE. |
...
05.
...
TELA
...
Outras Ações / Ações relacionadas
...
DO TREEVIEW
04. TELA XXXXX
Principais Campos e Parâmetros
...
Card documentos | ||||
---|---|---|---|---|
|
...