Freigeben über


CTreeCtrl::SortChildrenCB

Rufen Sie diese Funktion auf, um Strukturansichtelemente mithilfe einer anwendungsdefinierten Rückruffunktion zu sortieren, die die Elemente verglichen werden.

BOOL SortChildrenCB(
   LPTVSORTCB pSort 
);

Parameter

  • pSort
    Zeiger auf eine Struktur TVSORTCB.

Rückgabewert

Ungleich 0 (null), wenn erfolgreich; 0 andernfalls.

Hinweise

Die Vergleichsfunktion der Struktur, lpfnCompare, muss einen negativen Wert zurückgeben, wenn der erste Punkt das zweite vorausgeht, ein positiver Wert, wenn der erste Punkt das zweite folgt, oder auf null einstellen, wenn die beiden Elemente entsprechen.

Die lParam1 und lParam2-Parameter entsprechen dem lParam-Member der Struktur TVITEM für die zwei Elemente, die verglichen werden.Der lParamSort-Parameter entspricht dem lParam-Member der TV_SORTCB-Struktur.

Beispiel

// 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);

Anforderungen

Header: afxcmn.h

Siehe auch

Referenz

CTreeCtrl-Klasse

Hierarchien-Diagramm

CTreeCtrl::SortChildren