次の方法で共有


CTreeCtrl::InsertItem

ツリー ビュー コントロールの新しい項目を挿入するには、この関数を呼び出します。

HTREEITEM InsertItem(
   LPTVINSERTSTRUCT lpInsertStruct 
);
HTREEITEM InsertItem(
   UINT nMask,
   LPCTSTR lpszItem,
   int nImage,
   int nSelectedImage,
   UINT nState,
   UINT nStateMask,
   LPARAM lParam,
   HTREEITEM hParent,
   HTREEITEM hInsertAfter 
);
HTREEITEM InsertItem(
   LPCTSTR lpszItem,
   HTREEITEM hParent = TVI_ROOT,
   HTREEITEM hInsertAfter = TVI_LAST 
);
HTREEITEM InsertItem(
   LPCTSTR lpszItem,
   int nImage,
   int nSelectedImage,
   HTREEITEM hParent = TVI_ROOT,
   HTREEITEM hInsertAfter = TVI_LAST
);

パラメーター

  • lpInsertStruct
    挿入するツリー ビュー アイテムの属性を指定する TVINSERTSTRUCT へのポインター。

  • nMask
    セットにすべての属性を指定する整数。Windows SDKの TVITEM の構造体を参照してください。

  • lpszItem
    項目のテキストを含む文字列のアドレス。

  • nImage
    ツリー ビュー コントロールのイメージ リスト項目のイメージのインデックス。

  • nSelectedImage
    ツリー ビュー コントロールのイメージ リスト項目の選択されたイメージのインデックス。

  • nState
    項目の状態の値を指定します。適切な状態の一覧については、Windows SDK のツリー ビュー コントロール内の項目の状態を参照してください。

  • nStateMask
    どの状態を設定する必要があるかを指定します。Windows SDKの TVITEM の構造体を参照してください。

  • lParam
    項目に関連付けられた 32 ビット アプリケーション固有の値。

  • hParent
    挿入アイテムの親のハンドル。

  • hInsertAfter
    項目のハンドル。その場合、新しい項目が挿入されます。

戻り値

成功した場合は新しい項目のハンドル; それ null

解説

例には、ツリー コントロール項目を挿入する関数の各バージョンを使用する可能性がある状況を示しています。

使用例

// Insert a root item using the structure. We must
// initialize a TVINSERTSTRUCT structure and pass its
// address to the call. 

TVINSERTSTRUCT tvInsert;
tvInsert.hParent = NULL;
tvInsert.hInsertAfter = NULL;
tvInsert.item.mask = TVIF_TEXT;
tvInsert.item.pszText = _T("United States");

HTREEITEM hCountry = m_TreeCtrl.InsertItem(&tvInsert);

// Insert subitems of that root. Pennsylvania is
// a state in the United States, so its item will be a child
// of the United States item. We won't set any image or states,
// so we supply only the TVIF_TEXT mask flag. This
// override provides nearly complete control over the
// insertion operation without the tedium of initializing
// a structure. If you're going to add lots of items
// to a tree, you might prefer the structure override
// as it affords you a performance win by allowing you
// to initialize some fields of the structure only once,
// outside of your insertion loop.

HTREEITEM hPA = m_TreeCtrl.InsertItem(TVIF_TEXT,
   _T("Pennsylvania"), 0, 0, 0, 0, 0, hCountry, NULL);

// Insert the "Washington" item and assure that it is
// inserted after the "Pennsylvania" item. This override is 
// more appropriate for conveniently inserting items with 
// images.

HTREEITEM hWA = m_TreeCtrl.InsertItem(_T("Washington"),
   0, 0, hCountry, hPA);

// We'll add some cities under each of the states.
// The override used here is most appropriate
// for inserting text-only items.

m_TreeCtrl.InsertItem(_T("Pittsburgh"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Harrisburg"), hPA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Altoona"), hPA, TVI_SORT);

m_TreeCtrl.InsertItem(_T("Seattle"), hWA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Kalaloch"), hWA, TVI_SORT);
m_TreeCtrl.InsertItem(_T("Yakima"), hWA, TVI_SORT);

必要条件

ヘッダー: afxcmn.h

参照

関連項目

CTreeCtrl クラス

階層図

CTreeCtrl::DeleteItem

CTreeCtrl::HitTest

CTreeCtrl::SelectDropTarget

CTreeCtrl::GetItem

Tree View Control Reference