António Roberto Software
a.roberto@mail.telepac.pt

Linguagens de Programação I
2º ano da Licenciatura em Informática de Gestão

Aula de 28 de Março de 2001

ArvoreDemo: 3ª aplicação Windows, utilizando o Visual C++

Tentativa de realizar a Travessia em Largura. O resultado não é correcto.

 

void CArvoreDemoDlg::OnTravessiaLargura()
{

UpdateData( true);

m_Travessia = "";

HTREEITEM Raiz = m_Arvore.GetRootItem( );

TravessiaLargura( Raiz );


UpdateData( false);

}

// ASSIM NÃO FUNCIONA CORRECTAMENTE
void CArvoreDemoDlg::TravessiaLargura(HTREEITEM No)
{

if ( No )
{


m_Travessia = m_Travessia + " , " + m_Arvore.GetItemText(No);

// Avança na travessia pelo irmão
TravessiaLargura( m_Arvore.GetNextSiblingItem(No) );
// Avanca na travessia pelo seu filho
TravessiaLargura( m_Arvore.GetChildItem(No) );

}

}

   
Nome do Projecto : ArvoreDemo ( versão 3 )
Tipo de Projecto : MFC AppWizard( exe ) Dialog Based
Zip file com o projecto :
ArvoreDemo.zip