Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O uso típico de um controle de árvore (CTreeCtrl) segue o padrão abaixo:
O controle é criado. Se o controlador for especificado num modelo de caixa de diálogo ou se estiver a usar
CTreeView, a criação será automática quando a caixa de diálogo ou vista for criada. Se pretender criar o controlo de árvore como uma janela filha de outra janela, use a função membro Criar.Se você quiser que seu controle de árvore use imagens, defina uma lista de imagens chamando SetImageList. Você também pode mudar a indentação chamando SetIndent. Um bom momento para fazer isso é em OnInitDialog (para controles em caixas de diálogo) ou OnInitialUpdate (para modos de exibição).
Coloque dados no controle chamando a
CTreeCtrlfunção InsertItem uma vez para cada item de dados.InsertItemRetorna um identificador para o item que pode usar para se referir a ele mais tarde, como ao adicionar itens subordinados. Um bom momento para inicializar os dados está emOnInitDialog(para controles em caixas de diálogo) ouOnInitialUpdate(para modos de exibição).À medida que o usuário interage com o controle, ele enviará várias mensagens de notificação. Você pode especificar uma função para gerir cada uma das mensagens que deseja manipular, adicionando uma macro ON_NOTIFY_REFLECT no mapa de mensagens da janela de controlo ou adicionando uma macro ON_NOTIFY ao mapa de mensagens da janela pai. Consulte Mensagens de notificação de controle de árvore mais adiante neste tópico para obter uma lista de notificações possíveis.
Chame as várias funções membro do conjunto para atribuir valores ao controlo. As alterações que você pode fazer incluem definir o recuo e alterar o texto, a imagem ou os dados associados a um item.
Use as várias funções Get para examinar o conteúdo do controle. Você também pode percorrer o conteúdo do controle de árvore com funções que permitem recuperar alças para pais, filhos e irmãos de um item especificado. Você pode até mesmo classificar os filhos de um nó específico.
Quando terminar com o controlo, certifique-se de que este é devidamente destruído. Se o controlo de árvore estiver numa caixa de diálogo ou se for uma vista, este e o objeto
CTreeCtrlserão destruídos automaticamente. Se não, você precisa garantir que o controle e oCTreeCtrlobjeto sejam destruídos corretamente.