CTreeCtrl::SortChildrenCB
Chame essa função para classificar os itens de modo de exibição de árvore usando uma função de retorno de telefonar definida pelo aplicativo que compara os itens.
BOOL SortChildrenCB(
LPTVSORTCB pSort
);
Parâmetros
- pSort
Ponteiro para um TVSORTCB estrutura.
Valor de retorno
Diferente de zero se bem-sucedida; caso contrário, 0.
Comentários
Função de comparação da estrutura, lpfnCompare, deve retornar um valor negativo se o primeiro item deve preceder o segundo, um valor positivo se o primeiro item deve seguir o segundo ou zero se os dois itens são equivalentes.
The lParam1 e lParam2 parâmetros correspondem do lParam membro do TVITEM estrutura para os dois itens que estão sendo comparados.The lParamSort parâmetro corresponde da lParam membro do TV_SORTCB estrutura.
Exemplo
// Sort the item in reverse alphabetical order.
int CALLBACK MyCompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
// lParamSort contains a pointer to the tree control.
// The lParam of an item is just its handle,
// as specified with SetItemData
CTreeCtrl* pmyTreeCtrl = (CTreeCtrl*)lParamSort;
CString strItem1 = pmyTreeCtrl->GetItemText((HTREEITEM)lParam1);
CString strItem2 = pmyTreeCtrl->GetItemText((HTREEITEM)lParam2);
return strItem2.Compare(strItem1);
}
TVSORTCB tvs;
// Sort the tree control's items using my
// callback procedure.
tvs.hParent = TVI_ROOT;
tvs.lpfnCompare = MyCompareProc;
tvs.lParam = (LPARAM)&m_TreeCtrl;
m_TreeCtrl.SortChildrenCB(&tvs);
Requisitos
Cabeçalho: afxcmn.h