次の方法で共有


ツリー コントロールの親項目と子項目

ツリー コントロール (CTreeCtrl) 内の項目には、子項目と呼ばれるサブ項目の一覧を関連付けることができます。 1 つ以上の子項目を持つ項目を親項目と呼びます。 子項目は親項目の下に表示され、親に従属することを示すためにインデントされます。 親を持たない項目は階層の最上位にあり、ルート項目と呼ばれます。

親アイテムの子項目のリストの状態は、いつでも展開または折りたたむことができます。 状態が展開されると、親項目の下に子項目が表示されます。 折りたたまれている場合、子項目は表示されません。 リストは、ユーザーが親アイテムをダブルクリックしたときに展開された状態と折りたたまれた状態を自動的に切り替えます。親が TVS_HASBUTTONS スタイルを持っている場合は、ユーザーが親アイテムに関連付けられているボタンをクリックしたときに切り替わります。 アプリケーションは、Expand メンバー関数を使用して子項目を 展開 または折りたたみることができます。

InsertItem メンバー関数を呼び出して、ツリー コントロールに項目を追加します。 この関数は、項目を一意に識別する HTREEITEM 型のハンドルを返します。 項目を追加するときは、新しい項目の親項目のハンドルを指定する必要があります。 TVINSERTSTRUCT 構造体または hParent パラメーターで親項目ハンドルの代わりに NULL またはTVI_ROOT値を指定した場合、項目はルート項目として追加されます。

ツリー コントロールは、親アイテムの子項目のリストが展開または折りたたまれるときに、 TVN_ITEMEXPANDING 通知メッセージを送信します。 この通知により、変更を防いだり、子項目のリストの状態に依存する親アイテムの属性を設定したりできます。 リストの状態を変更した後、ツリー コントロールは TVN_ITEMEXPANDED 通知メッセージを送信します。

子項目のリストが展開されると、親項目を基準にインデントされます。 SetIndent メンバー関数を使用してインデントの量を設定するか、GetIndent メンバー関数を使用して現在の量を取得できます。

こちらも参照ください

CTreeCtrl の使用
コントロール