Sdílet prostřednictvím


Použití stromových ovládacích prvků

Typické použití ovládacího prvku stromu (CTreeCtrl) se řídí následujícím vzorem:

  • Ovládací prvek se vytvoří. Pokud je ovládací prvek zadán v šabloně dialogového okna nebo pokud používáte CTreeView, vytváření je automatické při vytvoření dialogového okna nebo zobrazení. Pokud chcete vytvořit ovládací prvek stromu jako podřízené okno některého jiného okna, použijte funkci Vytvořit člena.

  • Pokud chcete, aby ovládací prvek strom používal obrázky, nastavte seznam obrázků voláním SetImageList. Odsazení můžete také změnit voláním SetIndent. Dobrý čas k tomu je v OnInitDialog (pro ovládací prvky v dialogových oknech) nebo OnInitialUpdate (pro zobrazení).

  • Data vložte do ovládacího prvku voláním CTreeCtrlfunkce InsertItem jednou pro každou položku dat. InsertItem vrátí popisovač položky, kterou můžete použít k pozdějšímu použití, jako například při přidávání podřízených položek. Vhodná doba k inicializaci dat je v OnInitDialog (pro ovládací prvky v dialogových oknech) nebo OnInitialUpdate (pro zobrazení).

  • Když uživatel pracuje s ovládacím prvku, odešle různé zprávy s oznámením. Pomocí ON_NOTIFY_REFLECT makra v mapě zpráv v ovládacím okně nebo přidáním ON_NOTIFY makra do mapy zpráv nadřazeného okna můžete určit funkci, která bude zpracovávat jednotlivé zprávy. Seznam možných notifikačních zpráv najdete v části Oznámení o ovládacím prvku stromu dále v tomto tématu.

  • Volejte různé členské funkce Set k nastavení hodnot pro řízení. Změny, které můžete provést, zahrnují nastavení odsazení a změnu textu, obrázku nebo dat přidružených k položce.

  • Pomocí různých funkcí Get můžete prozkoumat obsah ovládacího prvku. Obsah ovládacího prvku stromu můžete procházet také pomocí funkcí, které umožňují načítat identifikátory pro rodiče, podřízené položky a sousední položky. Můžete dokonce řadit potomky určitého uzlu.

  • Až dokončíte kontrolu, ujistěte se, že byla správně zlikvidována. Pokud se ovládací prvek strom nachází v dialogovém okně nebo zobrazení, on i objekt CTreeCtrl se automaticky zničí. Pokud ne, musíte zajistit, aby ovládací prvek i CTreeCtrl objekt byly správně zničeny.

Viz také

Použití atributu CTreeCtrl
Ovládací prvky