Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Każdy element w kontrolce drzewa (CTreeCtrl) może mieć skojarzoną parę obrazków map bitowych. Obrazy są wyświetlane po lewej stronie etykiety elementu. Jeden obraz jest wyświetlany po wybraniu elementu, a drugi jest wyświetlany, gdy element nie jest zaznaczony. Na przykład element może wyświetlać otwarty folder po wybraniu i zamknięty folder, gdy nie jest zaznaczony.
Aby użyć obrazów elementów, należy utworzyć listę obrazów, tworząc obiekt CImageList i używając funkcji CImageList::Create , aby utworzyć skojarzoną listę obrazów. Następnie dodaj żądane mapy bitowe do listy i skojarz listę z kontrolką drzewa przy użyciu funkcji składowej SetImageList . Domyślnie wszystkie elementy wyświetlają pierwszy obraz na liście obrazów zarówno dla wybranych, jak i nie zaznaczonych stanów. Zachowanie domyślne dla określonego elementu można zmienić, określając indeksy wybranych i niezaznaczonych obrazów podczas dodawania elementu do kontrolki drzewa przy użyciu funkcji składowej InsertItem . Indeksy można zmienić po dodaniu elementu przy użyciu funkcji składowej SetItemImage .
Listy obrazów kontrolki drzewa mogą również zawierać obrazy nakładki, które mają być nakładane na obrazy elementów. Wartość różna od zera w bitach od 8 do 11 stanu pozycji elementu kontrolnego drzewa wskazuje indeks oparty na jednym obrazu nakładki (0 oznacza brak obrazu nakładki). Ponieważ używany jest 4-bitowy indeks oparty na jednym, obrazy nakładki muszą należeć do pierwszych 15 obrazów na listach obrazów. Aby uzyskać więcej informacji na temat stanów elementów kontrolki drzewa, zobacz Omówienie stanów elementów kontrolek drzewa we wcześniejszej części tego tematu.
Jeśli zostanie określona lista obrazów stanu, kontrolka drzewa rezerwuje miejsce po lewej stronie ikony każdego elementu dla obrazu stanu. Aplikacja może używać obrazów stanu, takich jak zaznaczone i wyczyszczone pola wyboru, aby wskazać stany elementów zdefiniowanych przez aplikację. Wartość niezerowa w bitach od 12 do 15 określa indeks obrazu stanu, zaczynając od jednego (0 oznacza brak obrazu stanu).
Określając wartość I_IMAGECALLBACK zamiast indeksu obrazu, można opóźnić określanie zaznaczonego lub niezaznaczonego obrazu, dopóki element nie zostanie ponownie wyrysowany. I_IMAGECALLBACK poleca kontrolce drzewa wysłanie do aplikacji zapytania o indeks przez wysłanie komunikatu powiadomienia TVN_GETDISPINFO.
Funkcja składowa GetImageList pobiera uchwyt listy obrazów kontrolki typu drzewo. Ta funkcja jest przydatna, jeśli musisz dodać więcej obrazów do listy. Aby uzyskać więcej informacji na temat list obrazów, zobacz Using CImageList, CImageList w dokumentacji MFC i Listy obrazów w zestawie WINDOWS SDK.