Ağaç Denetimi Üst ve Alt Öğeleri
Ağaç denetimindeki (CTreeCtrl) herhangi bir öğenin, kendisiyle ilişkilendirilmiş alt öğe olarak adlandırılan bir alt öğe listesi olabilir. Bir veya daha fazla alt öğe içeren bir öğeye üst öğe adı verilir. Bir alt öğe, üst öğesinin altında görüntülenir ve üst öğeye bağımlı olduğunu belirtmek için girintilenir. Üst öğesi olmayan bir öğe hiyerarşinin en üstündedir ve kök öğe olarak adlandırılır.
Herhangi bir zamanda, bir üst öğenin alt öğe listesinin durumu genişletilebilir veya daraltılabilir. Durum genişletildiğinde, alt öğeler üst öğenin altında görüntülenir. Daraltıldığında alt öğeler görüntülenmez. Kullanıcı üst öğeye çift tıkladığında veya üst öğede TVS_HASBUTTONS stili varsa, kullanıcı üst öğeyle ilişkilendirilmiş düğmeye tıkladığında liste otomatik olarak genişletilmiş ve daraltılmış durumlar arasında geçiş yapar. Bir uygulama, Üyeyi genişlet işlevini kullanarak alt öğeleri genişletebilir veya daraltabilir.
InsertItem üye işlevini çağırarak bir öğeyi ağaç denetimine eklersiniz. Bu işlev, öğeyi benzersiz olarak tanımlayan HTREEITEM türünün tanıtıcısını döndürür. Öğe eklerken, yeni öğenin üst öğesinin tutamacını belirtmeniz gerekir. TVINSERTSTRUCT yapısında veya hParent parametresinde üst öğe tanıtıcısı yerine NULL veya TVI_ROOT değeri belirtirseniz, öğe kök öğe olarak eklenir.
Bir üst öğenin alt öğe listesi genişletilmek veya daraltmak üzere olduğunda ağaç denetimi TVN_ITEMEXPANDING bildirim iletisi gönderir. Bildirim, değişikliği önleme veya üst öğenin alt öğe listesinin durumuna bağlı öznitelikleri ayarlama fırsatı verir. Listenin durumunu değiştirdikten sonra ağaç denetimi bir TVN_ITEMEXPANDED bildirim iletisi gönderir.
Bir alt öğe listesi genişletildiğinde, üst öğeye göre girintili olur. SetIndent üye işlevini kullanarak girinti miktarını ayarlayabilir veya GetIndent üye işlevini kullanarak geçerli miktarı alabilirsiniz.