ツリー ビュー コントロールの使用
このセクションには、ツリービュー コントロールを操作するための実装の詳細とコード例が含まれています。
このセクションの内容
トピック | 説明 |
---|---|
ツリー ビュー コントロールを作成する方法 |
ツリー ビュー コントロールを作成するには、ウィンドウ クラスに WC_TREEVIEW 値を指定して CreateWindowEx 関数を使用します。 ツリー ビュー ウィンドウ クラスは、共通コントロール DLL が読み込まれるときに、アプリケーションのアドレス空間に登録されます。 DLL が確実に読み込まれるようにするには、InitCommonControls 関数を使用します。 |
イメージ リストを初期化する方法 |
ツリービュー コントロール内のすべての項目には、2 つのイメージを関連付けることができます。 項目が選択されている場合は 1 つの画像が表示され、選択されていない場合はもう 1 つの画像が表示されます。 ツリービュー アイテムがあるイメージを含めるには、まず Image Lists 関数を使用してイメージ リストを作成し、それにイメージを追加します。 次に、TVM_SETIMAGELIST メッセージを使用して、イメージ リストをツリービュー コントロールに関連付けます。 |
ツリー ビュー項目を追加する方法 |
項目をツリー ビュー コントロールに追加するには、TVM_INSERTITEM メッセージをコントロールに送信します。 メッセージには、TVINSERTSTRUCT 構造のアドレス、親項目、新しい項目を挿入した後の項目、およびその項目の属性を定義する TVITEM 構造が含まれます。 属性には、項目のラベル、選択された画像と選択されていない画像、および 32 ビットのアプリケーション定義値が含まれます。 |
ツリー ビュー項目をドラッグする方法 |
このトピックでは、ツリー ビュー項目のドラッグ アンド ドロップを処理するコードを示します。 このサンプル コードは、3 つの関数で構成されています。 1 つ目の関数はドラッグ操作を開始し、2 つ目の関数は画像をドラッグし、3 つ目の関数はドラッグ操作を終了します。 |
状態イメージ インデックスを操作する方法 |
ツリー ビュー コントロールで状態イメージ インデックスを設定および取得する方法については、混乱が生じることがよくあります。 次の例は、状態イメージ インデックスを設定および取得するための適切な方法を示しています。 この例では、ツリー ビュー コントロールに状態イメージ インデックスが 2 つ (オフとオン) しか存在しないことを前提としています。 アプリケーションに複数の関数が含まれている場合、そのケースを処理するためにこれらの関数を変更する必要があります。 |
ツリー ビュー ヒントを使用する方法 |
ツリー ビュー コントロールに TVS_INFOTIP スタイルを適用すると、ツリー ビュー内の項目の上にカーソルがあるときに TVN_GETINFOTIP 通知が生成されます。 この通知に応答することにより、ヒントに表示されるテキストを設定できます。 |