CTreeCtrl::SortChildrenCB

更新 : 2007 年 11 月

アイテムを比較するアプリケーション定義のコールバック関数を使用して、ツリー ビュー アイテムを並べ替えます。

BOOL SortChildrenCB(
   LPTVSORTCB pSort 
);

パラメータ

  • pSort
    TVSORTCB 構造体へのポインタ。

戻り値

正常終了した場合は 0 以外を返します。それ以外の場合は 0 を返します。

解説

構造体の比較関数、lpfnCompare は、最初のアイテムが 2 番目よりも前である場合は負の値を、2 番目よりも後ろである場合は正の値を、等しい場合は 0 を返すようにします。

パラメータ lParam1 と lParam2 は、比較される 2 つのアイテムの TVITEM 構造体の lParam メンバに相当します。パラメータ lParamSort は、TV_SORTCB 構造体の lParam メンバに相当します。

使用例

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

必要条件

ヘッダー : afxcmn.h

参照

参照

CTreeCtrl クラス

階層図

CTreeCtrl::SortChildren

その他の技術情報

CTreeCtrl のメンバ