Usando controles de árvore
Uso típico de um controle de árvore (CTreeCtrl) segue o padrão abaixo:
O controle é criado.Se o controle for especificado em um modelo de caixa de diálogo ou se você estiver usando CTreeView, criação é automática quando a caixa de diálogo ou modo de exibição é criado.Se você deseja criar o controle de árvore como uma janela filho de alguma outra janela, use o criar função de membro.
Se desejar que o controle de árvore para usar imagens, definir uma lista de imagem chamando SetImageList.Você também pode alterar o recuo chamando SetIndent.É um bom momento para fazer isso em OnInitDialog (para controles nas caixas de diálogo) ou OnInitialUpdate (para modos de exibição).
Colocar dados no controle chamando o CTreeCtrldo InsertItem função uma vez para cada item de dados.InsertItemRetorna um identificador para o item que você pode usar para consultá-lo posteriormente, como quando adicionando itens filho.É um bom momento para inicializar os dados em OnInitDialog (para controles nas caixas de diálogo) ou OnInitialUpdate (para modos de exibição).
Como o usuário interage com o controle, ele enviará várias mensagens de notificação.Você pode especificar uma função para lidar com cada uma das mensagens que você deseja manipular adicionando um ON_NOTIFY_REFLECT macro no mapa da mensagem da janela de controle ou adicionando um ON_NOTIFY macro ao mapa de mensagem da sua janela pai.Consulte Mensagens de notificação de controle de árvore posteriormente neste tópico para obter uma lista de possíveis notificações.
Várias funções de membro do conjunto para definir valores para o controle de chamada.As alterações que você pode fazer incluem definir o recuo e alterar o texto, imagem ou dados associados a um item.
Use várias funções Get para examinar o conteúdo do controle.Também é possível percorrer o conteúdo do controle de árvore com funções que permitem recuperar identificadores para pais, filhos e irmãos de um item especificado.Você ainda pode classificar os filhos de um nó específico.
Quando você terminar com o controle, verifique se que ele corretamente é destruído.Se o controle de árvore estiver em uma caixa de diálogo ou se é um modo de exibição, ele e o CTreeCtrl objeto será destruído automaticamente.Se não, você precisará garantir que tanto o controle e o CTreeCtrl objeto corretamente são destruídos.