Sdílet prostřednictvím


CMFCShellTreeCtrl – třída

Třída CMFCShellTreeCtrl rozšiřuje funkce třídy CTreeCtrl zobrazením hierarchie položek prostředí.

Další podrobnosti najdete ve zdrojovém kódu ve složce VC\atlmfc\src\mfc instalace sady Visual Studio.

Syntaxe

class CMFCShellTreeCtrl : public CTreeCtrl

Členové

Veřejné metody

Jméno popis
CMFCShellTreeCtrl::EnableShellContextMenu Povolí nebo zakáže místní nabídku.
CMFCShellTreeCtrl::GetFlags Vrátí kombinaci příznaků, které jsou předány IShellFolder::EnumObjects.
CMFCShellTreeCtrl::GetItemPath Načte cestu k položce.
CMFCShellTreeCtrl::GetRelatedList Vrátí ukazatel na CMFCShellListCtrl Class objekt, který se používá společně s tímto CMFCShellTreeCtrl objektem k vytvoření okna podobné průzkumníku.
CMFCShellTreeCtrl::OnChildNotify Tato členská funkce je volána nadřazeným oknem tohoto okna, když obdrží zprávu s oznámením, která platí pro toto okno. (Přepsání CWnd::OnChildNotify.)
CMFCShellTreeCtrl::OnGetItemicon
CMFCShellTreeCtrl::OnGetItemText
CMFCShellTreeCtrl::Refresh Aktualizuje a znovu nakreslí aktuální CMFCShellTreeCtrl objekt.
CMFCShellTreeCtrl::SelectPath Vybere příslušnou položku ovládacího prvku stromu na základě zadané cesty PIDL nebo řetězce.
CMFCShellTreeCtrl::SetFlags Nastaví příznaky pro filtrování kontextu stromu (podobně jako příznaky používané ).IShellFolder::EnumObjects
CMFCShellTreeCtrl::SetRelatedList Nastaví vztah mezi aktuálním CMFCShellTreeCtrl objektem a objektem CMFCShellListCtrl .

Poznámky

Tato třída rozšiřuje CTreeCtrl třídu tím, že umožňuje programu zahrnout položky prostředí Windows Shell do stromu. Tato třída může být přidružena k objektu CMFCShellListCtrl k vytvoření úplného okna Průzkumníka. Po výběru položky ve stromu se v přidruženém seznamu zobrazí seznam položek prostředí Windows.

Hierarchie dědičnosti

Objekt CObject

CCmdTarget

Cwnd

CTreeCtrl

CMFCShellTreeCtrl

Požadavky

Hlavička: afxshelltreeCtrl.h

Příklad

Následující příklad ukazuje, jak vytvořit objekt CMFCShellTreeCtrl třídy. Tento fragment kódu je součástí ukázky Průzkumníka.

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

Povolí místní nabídku.

void EnableShellContextMenu(BOOL bEnable = TRUE);

Parametry

bEnable
[v] Logická hodnota, která určuje, jestli se má místní nabídka povolit.

CMFCShellTreeCtrl::GetFlags

Vrátí příznaky nastavené pro CMFCShellTreeCtrl Třída objektu.

DWORD GetFlags() const;

Vrácená hodnota

Hodnota DWORD, která určuje kombinaci aktuálně nastavených příznaků.

Poznámky

Příznaky nastavené v objektu CMFCShellTreeCtrl jsou odeslány do metody IShellFolder::EnumObjects při každé aktualizaci objektu. Příznaky můžete změnit pomocí metody CMFCShellTreeCtrl::SetFlags .

CMFCShellTreeCtrl::GetItemPath

Načte cestu k položce v OBJEKTu CMFCShellTreeCtrl Class .

BOOL GetItemPath(
    CString& strPath,
    HTREEITEM htreeItem = NULL) const;

Parametry

strPath
[ven] Odkaz na řetězcový parametr. Metoda zapíše cestu položky k tomuto parametru.

htreeItem
[v] Metoda načte cestu pro tuto položku ovládacího prvku stromu.

Vrácená hodnota

Nenulové, pokud je úspěšné; 0 jinak.

Poznámky

Pokud tato metoda selže, strPath obsahuje prázdný řetězec.

Pokud nezadáte hTreeItem, tato metoda se pokusí získat řetězec pro aktuálně vybranou položku. Pokud není vybrána žádná položka a hTreeItem je NULL, tato metoda selže.

CMFCShellTreeCtrl::GetRelatedList

Vrátí ukazatel na CMFCShellListCtrl Class objektu, který je přidružen k tomuto CMFCShellTreeCtrl objektu.

CMFCShellListCtrl* GetRelatedList() const;

Vrácená hodnota

Ukazatel na objekt přidružený k tomuto objektu CMFCShellListCtrl ovládacího prvku stromu.

Poznámky

Pomocí objektu CMFCShellListCtrl společně s objektem CMFCShellTreeCtrl můžete vytvořit okno podobné Průzkumníku. K přidružení dvou tříd použijte metodu CMFCShellTreeCtrl::SetRelatedList . Jakmile jsou přidružené, architektura automaticky aktualizuje CMFCShellListCtrl , pokud se výběr ve změnách CMFCShellTreeCtrl změní.

CMFCShellTreeCtrl::OnChildNotify

virtual BOOL OnChildNotify(
    UINT message,
    WPARAM wParam,
    LPARAM lParam,
    LRESULT* pLResult);

Parametry

[v] Zprávu
[v] wParam
[v] Lparam
[v] pLResult

Vrácená hodnota

Poznámky

CMFCShellTreeCtrl::OnGetItemicon

virtual int OnGetItemIcon(
    LPAFX_SHELLITEMINFO pItem,
    BOOL bSelected);

Parametry

[v] pItem
[v] bSelected

Vrácená hodnota

Poznámky

CMFCShellTreeCtrl::OnGetItemText

virtual CString OnGetItemText(LPAFX_SHELLITEMINFO pItem);

Parametry

[v] pItem

Vrácená hodnota

Poznámky

CMFCShellTreeCtrl::Refresh

Aktualizuje a znovu nakreslí CMFCShellTreeCtrl.

void Refresh();

Poznámky

Voláním této metody aktualizujte hierarchii položek zobrazených v souboru CMFCShellTreeCtrl.

CMFCShellTreeCtrl::SelectPath

Vybere položku ve třídě CMFCShellTreeCtrl na základě zadané cesty.

BOOL SelectPath(LPCTSTR lpszPath);
BOOL SelectPath(LPCITEMIDLIST lpidl);

Parametry

lpszPath
[v] Řetězec, který určuje cestu k položce.

lpidl
[v] PIDL, který určuje položku

Vrácená hodnota

S_OK v případě úspěchu; E_FAIL jinak.

CMFCShellTreeCtrl::SetFlags

Nastaví příznaky pro filtrování kontextu stromu.

void SetFlags(
    DWORD dwFlags,
    BOOL bRefresh = TRUE);

Parametry

dwFlags
[v] Příznaky, které chcete nastavit.

bRefresh
[v] Logická hodnota, která určuje, jestli CMFCShellTreeCtrl se má aktualizovat okamžitě.

Poznámky

Předá CMFCShellTreeCtrl všechny příznaky sady do IShellFolder::EnumObjects. Další informace o hodnotách různých příznaků naleznete v tématu IShellFolder::EnumObjects.

CMFCShellTreeCtrl::SetRelatedList

Přidruží CMFCShellListCtrl objekt k objektu CMFCShellTreeCtrl .

void SetRelatedList(CMFCShellListCtrl* pShellList);

Parametry

pShellList
[v] Ukazatel na CMFCShellListCtrl objekt.

Poznámky

Tato metoda přidruží k CMFCShellListCtrl .CMFCShellTreeCtrl Tyto objekty se můžou zobrazit jako okno podobné Průzkumníku: pokud uživatel vybere objekt v objektu CMFCShellTreeCtrl, přidružené položky v objektu CMFCShellListCtrl se automaticky aktualizují.

Použijte metodu CMFCShellTreeCtrl::GetRelatedList k načtení CMFCShellListCtrl přidružené k objektu CMFCShellTreeCtrl.

Viz také

Graf hierarchie
Třídy
CTreeCtrl – třída
CMFCShellListCtrl – třída