次の方法で共有


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

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

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

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

親項目の子項目のリストが展開または折りたたまれようとしているときに、ツリー コントロールによって TVN_ITEMEXPANDING 通知メッセージが送信されます。 この通知により、子項目のリストの状態に依存する親項目のすべての属性の変更や設定を阻止する機会が得られます。 リストの状態が変更された後、ツリー コントロールによって TVN_ITEMEXPANDED 通知メッセージが送信されます。

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

関連項目

CTreeCtrl の使い方
コントロール