Klasa CMFCShellTreeCtrl
Klasa CMFCShellTreeCtrl
rozszerza funkcjonalność klasy CTreeCtrl, wyświetlając hierarchię elementów powłoki.
Aby uzyskać więcej informacji, zobacz kod źródłowy znajdujący się w folderze VC\atlmfc\src\mfc instalacji programu Visual Studio.
Składnia
class CMFCShellTreeCtrl : public CTreeCtrl
Elementy członkowskie
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CMFCShellTreeCtrl::EnableShellContextMenu | Włącza lub wyłącza menu skrótów. |
CMFCShellTreeCtrl::GetFlags | Zwraca kombinację flag przekazywanych do folderu IShellFolder::EnumObjects. |
CMFCShellTreeCtrl::GetItemPath | Pobiera ścieżkę do elementu. |
CMFCShellTreeCtrl::GetRelatedList | Zwraca wskaźnik do obiektu klasy CMFCShellListCtrl, który jest używany razem z tym CMFCShellTreeCtrl obiektem w celu utworzenia okna przypominającego Eksploratora. |
CMFCShellTreeCtrl::OnChildNotify | Ta funkcja składowa jest wywoływana przez okno nadrzędne tego okna, gdy otrzymuje komunikat powiadomienia, który ma zastosowanie do tego okna. (Przesłonięcia) CWnd::OnChildNotify.) |
CMFCShellTreeCtrl::OnGetItemicon | |
CMFCShellTreeCtrl::OnGetItemText | |
CMFCShellTreeCtrl::Refresh | Odświeża i ponownie maluje bieżący CMFCShellTreeCtrl obiekt. |
CMFCShellTreeCtrl::SelectPath | Wybiera odpowiedni element kontrolki drzewa na podstawie podanej ścieżki PIDL lub ciągu. |
CMFCShellTreeCtrl::SetFlags | Ustawia flagi, aby filtrować kontekst drzewa (podobnie jak flagi używane przez IShellFolder::EnumObjects program ). |
CMFCShellTreeCtrl::SetRelatedList | Ustawia relację między bieżącym CMFCShellTreeCtrl obiektem a obiektem CMFCShellListCtrl . |
Uwagi
Ta klasa rozszerza klasę CTreeCtrl
, umożliwiając programowi uwzględnianie elementów powłoki systemu Windows w drzewie. Ta klasa może być skojarzona z obiektem w CMFCShellListCtrl
celu utworzenia kompletnego okna Eksploratora. Następnie wybranie elementu w drzewie spowoduje wyświetlenie listy elementów powłoki systemu Windows na skojarzonej liście.
Hierarchia dziedziczenia
CMFCShellTreeCtrl
Wymagania
Nagłówek: afxshelltreeCtrl.h
Przykład
W poniższym przykładzie pokazano, jak utworzyć obiekt CMFCShellTreeCtrl
klasy. Ten fragment kodu jest częścią przykładu Eksploratora.
CMFCShellTreeCtrl m_wndShellTree;
// const int idTree = 1
CRect rectDummy(0, 0, 0, 0);
const DWORD dwViewStyle = WS_CHILD | WS_VISIBLE | TVS_HASLINES |
TVS_LINESATROOT | TVS_HASBUTTONS;
// The this pointer points to CFolderBar class which extends the CDockablePane class
m_wndShellTree.Create(dwViewStyle, rectDummy, this, idTree);
CMFCShellTreeCtrl::EnableShellContextMenu
Włącza menu skrótów.
void EnableShellContextMenu(BOOL bEnable = TRUE);
Parametry
bEnable
[in] Wartość logiczna określająca, czy włączyć menu skrótów.
CMFCShellTreeCtrl::GetFlags
Zwraca flagi ustawione dla obiektu klasy CMFCShellTreeCtrl.
DWORD GetFlags() const;
Wartość zwracana
Wartość DWORD określająca kombinację aktualnie ustawionych flag.
Uwagi
Flagi ustawione w obiekcie CMFCShellTreeCtrl
są wysyłane do metody IShellFolder::EnumObjects za każdym razem, gdy obiekt zostanie odświeżony. Flagi można zmienić za pomocą metody CMFCShellTreeCtrl::SetFlags .
CMFCShellTreeCtrl::GetItemPath
Pobiera ścieżkę elementu w obiekcie klasy CMFCShellTreeCtrl.
BOOL GetItemPath(
CString& strPath,
HTREEITEM htreeItem = NULL) const;
Parametry
strPath
[out] Odwołanie do parametru ciągu. Metoda zapisuje ścieżkę elementu do tego parametru.
htreeItem
[in] Metoda pobiera ścieżkę dla tego elementu kontrolki drzewa.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; 0 w przeciwnym razie.
Uwagi
Jeśli ta metoda nie powiedzie się, parametr strPath zawiera pusty ciąg.
Jeśli nie określisz hTreeItem, ta metoda próbuje uzyskać ciąg dla aktualnie wybranego elementu. Jeśli żaden element nie jest zaznaczony, a hTreeItem ma wartość NULL, ta metoda nie powiedzie się.
CMFCShellTreeCtrl::GetRelatedList
Zwraca wskaźnik do obiektu klasy CMFCShellListCtrl skojarzonego z tym obiektem CMFCShellTreeCtrl.
CMFCShellListCtrl* GetRelatedList() const;
Wartość zwracana
Wskaźnik do obiektu skojarzonego CMFCShellListCtrl
z tym obiektem kontrolki drzewa.
Uwagi
Za pomocą CMFCShellListCtrl
obiektu wraz z obiektem CMFCShellTreeCtrl
można utworzyć okno przypominające eksploratora. Użyj metody CMFCShellTreeCtrl::SetRelatedList , aby skojarzyć dwie klasy. Po ich skojarzeniu platforma automatycznie aktualizuje CMFCShellListCtrl
element , jeśli wybór w CMFCShellTreeCtrl
zmianach.
CMFCShellTreeCtrl::OnChildNotify
virtual BOOL OnChildNotify(
UINT message,
WPARAM wParam,
LPARAM lParam,
LRESULT* pLResult);
Parametry
[in] Komunikat
[in] wParam
[in] lParam
[in] pLResult
Wartość zwracana
Uwagi
CMFCShellTreeCtrl::OnGetItemicon
virtual int OnGetItemIcon(
LPAFX_SHELLITEMINFO pItem,
BOOL bSelected);
Parametry
[in] pItem
[in] bSelected
Wartość zwracana
Uwagi
CMFCShellTreeCtrl::OnGetItemText
virtual CString OnGetItemText(LPAFX_SHELLITEMINFO pItem);
Parametry
[in] pItem
Wartość zwracana
Uwagi
CMFCShellTreeCtrl::Refresh
Odświeża i ponownie maluje cmFCShellTreeCtrl.
void Refresh();
Uwagi
Wywołaj tę metodę, aby odświeżyć hierarchię elementów wyświetlanych w pliku CMFCShellTreeCtrl
.
CMFCShellTreeCtrl::SelectPath
Wybiera element w klasie CMFCShellTreeCtrl na podstawie podanej ścieżki.
BOOL SelectPath(LPCTSTR lpszPath);
BOOL SelectPath(LPCITEMIDLIST lpidl);
Parametry
lpszPath
[in] Ciąg określający ścieżkę elementu.
lpidl
[in] PiDL określający element
Wartość zwracana
S_OK w przypadku powodzenia; E_FAIL w przeciwnym razie.
CMFCShellTreeCtrl::SetFlags
Ustawia flagi, aby filtrować kontekst drzewa.
void SetFlags(
DWORD dwFlags,
BOOL bRefresh = TRUE);
Parametry
dwFlags
[in] Flagi do ustawienia.
bRefresh
[in] Wartość logiczna określająca, czy CMFCShellTreeCtrl
powinny być odświeżane natychmiast.
Uwagi
Obiekt CMFCShellTreeCtrl
przekazuje wszystkie flagi zestawu do elementu IShellFolder::EnumObjects. Aby uzyskać więcej informacji na temat wartości różnych flag, zobacz IShellFolder::EnumObjects.
CMFCShellTreeCtrl::SetRelatedList
Kojarzy obiekt CMFCShellListCtrl z obiektem CMFCShellTreeCtrl.
void SetRelatedList(CMFCShellListCtrl* pShellList);
Parametry
pShellList
[in] Wskaźnik do CMFCShellListCtrl
obiektu.
Uwagi
Ta metoda kojarzy element CMFCShellListCtrl
z elementem CMFCShellTreeCtrl
. Te obiekty mogą być wyświetlane jako okno przypominające Eksploratora: jeśli użytkownik wybierze obiekt w CMFCShellTreeCtrl
obiekcie , skojarzone elementy w obiekcie CMFCShellListCtrl
zostaną automatycznie zaktualizowane.
Użyj metody CMFCShellTreeCtrl::GetRelatedList , aby pobrać CMFCShellListCtrl
skojarzony z elementem CMFCShellTreeCtrl
.
Zobacz też
Wykres hierarchii
Klasy
Klasa CTreeCtrl
Klasa CMFCShellListCtrl