Použití ovládacích prvků strom
Typické použití ovládacího prvku stromu (CTreeCtrl) následuje vzor níže:
Ovládací prvek je vytvořen.Pokud je zadán ovládací prvek do šablony dialogové okno pole, nebo pokud používáte CTreeView, vytváření je automaticky při vytvoření v dialogovém okně nebo zobrazení.Pokud chcete vytvořit ovládací prvek stromové struktury jako podřízené okno některé další okna, použijte vytvořit členské funkce.
Pokud chcete, aby vaše Stromový ovládací prvek na používání obrázků, nastavte seznam obrázků voláním SetImageList.Můžete také změnit odsazení voláním SetIndent.Je vhodný čas k tomu v OnInitDialog (pro ovládací prvky dialogových oken) nebo OnInitialUpdate (pro zobrazení).
Vložení dat do ovládacího prvku voláním CTreeCtrlna metody InsertItem funkce pro každou položku údaje.InsertItemVrátí popisovač k položce, kterou můžete pro pozdější, například při přidání podřízené položky.Je vhodný čas k inicializaci dat v OnInitDialog (pro ovládací prvky dialogových oken) nebo OnInitialUpdate (pro zobrazení).
Při interakci uživatele s ovládacím prvkem, odešle různých zpráv s oznámením.Můžete zadat funkci pro zpracování všech zpráv, které chcete zpracovat přidáním ON_NOTIFY_REFLECT makro v mapu zpráv okno řízení nebo přidáním ON_NOTIFY makro mapy nadřazené okno zprávy.Viz Zprávy s oznámením ovládacího prvku stromu pro seznam možných oznámení dále v tomto tématu.
Volání členské funkce různých sadu nastavení hodnoty ovládacího prvku.Můžete provedené změny zahrnují nastavení odsazení a změně textu, obrázek nebo data související s položkou.
Použijte různé funkce Get zkoumat obsah ovládacího prvku.Můžete také procházet obsah ovládacího prvku stromu s funkcemi, které umožňují načíst úchyty pro rodiče, děti a sourozenci zadané položky.Dokonce můžete řadit děti konkrétního uzlu.
Až skončíte s ovládacím prvkem, zkontrolujte, zda že je správně zničen.Pokud je ovládací prvek stromové struktury v dialogovém okně nebo je zobrazení jej a CTreeCtrl objekt bude automaticky zničen.Pokud ne, musíte zajistit, aby ovládací prvek a CTreeCtrl jsou správně zničení objektu.