Partilhar via


Itens pai e filho do controle de árvore

Qualquer item em um controle de árvoreCTreeCtrl() pode ter uma lista de subitens, que são chamadas de itens filho, associada a ele. Um item que tem um ou mais itens filho é chamado um item pai. Um item filho é exibida abaixo de seu item pai e recuado para indicar que está subordinado ao pai. Um item que não tem nenhum pai está no topo da hierarquia e é chamado um item raiz.

Em um determinado momento, o estado da lista pai de um item de itens filho pode ser expandido ou recolhido. Quando o estado é expandido, os itens filhos são exibidos abaixo do item pai. Quando for recolhido, os itens filhos não serão exibidos. Na lista as alternâncias automaticamente entre os estados expandidos e recolhidos quando o usuário clicar duas vezes no item pai ou, se o pai possui o estilo de TVS_HASBUTTONS , quando o usuário clicar no botão associado ao item pai. Um aplicativo pode expandir ou recolher os itens filho usando a função de membro de Expanda .

Você adiciona um item a um controle de árvore chamando a função de membro de InsertItem . Essa função retorna um identificador do tipo de HTREEITEM , que identifica exclusivamente o item. Ao adicionar um item, você deve especificar o identificador do item pai do novo item. Se você especificar nulo ou o valor de TVI_ROOT em vez de um identificador pai do item na estrutura de TVINSERTSTRUCT ou o parâmetro de hParent , o item será adicionado como um item raiz.

Um controle de árvore envia uma notificação de TVN_ITEMEXPANDING quando a lista pai de um item de itens filho está prestes a ser expandida ou recolhido. A notificação a oportunidade de evitar a modificação ou de definir quaisquer atributos do item pai que dependa do estado da lista de itens filho. Após alterar o estado da lista, o controle de árvore envia uma notificação de TVN_ITEMEXPANDED .

Quando uma lista de itens filho é expandida, é recuada relativo para o item pai. Você pode definir a quantidade de recuo usando a função de membro de SetIndent ou recuperar a quantidade atual usando a função de membro de GetIndent .

Consulte também

Referência

Usando CTreeCtrl

Conceitos

Controles (MFC)