CTreeCtrl::SortChildrenCB
Wywołanie tej funkcji do sortowania elementów w widoku drzewa przy użyciu funkcji wywołania zwrotnego przez aplikację, która porównuje elementy.
BOOL SortChildrenCB(
LPTVSORTCB pSort
);
Parametry
- pSort
Wskaźnik do TVSORTCB struktury.
Wartość zwracana
Niezerowa, jeśli kończy się pomyślnie; 0 inaczej.
Uwagi
Struktura funkcji porównania, lpfnCompare, musi zwracać wartość ujemna, jeśli pierwszy element powinien poprzedzać druga wartość dodatnią, jeśli pierwszy element należy postępować zgodnie z drugim lub zero, jeśli dwa elementy są równoważne.
lParam1 i lParam2 parametry odpowiadają lParam członek TVITEM struktury dla dwóch elementy porównywane.lParamSort Parametr odpowiada lParam członek TV_SORTCB struktury.
Przykład
// 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);
Wymagania
Nagłówek: afxcmn.h