Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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
| Název | 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
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;
Návratová 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.
Návratová 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;
Návratová 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áva
[v] wParam
[v] lParam
[v] pLResult
Návratová hodnota
Poznámky
CMFCShellTreeCtrl::OnGetItemicon
virtual int OnGetItemIcon(
LPAFX_SHELLITEMINFO pItem,
BOOL bSelected);
Parametry
[v] pItem
[v] bSelected
Návratová hodnota
Poznámky
CMFCShellTreeCtrl::OnGetItemText
virtual CString OnGetItemText(LPAFX_SHELLITEMINFO pItem);
Parametry
[v] pItem
Návratová 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
Návratová 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