Classe CMFCShellTreeCtrl
La CMFCShellTreeCtrl
classe estende la funzionalità della classe CTreeCtrl visualizzando una gerarchia di elementi della shell.
Per altri dettagli, vedere il codice sorgente che si trova nella cartella VC\atlmfc\src\mfc dell'installazione di Visual Studio.
Sintassi
class CMFCShellTreeCtrl : public CTreeCtrl
Membri
Metodi pubblici
Nome | Descrizione |
---|---|
CMFCShellTreeCtrl::EnableShellContextMenu | Abilita o disabilita il menu di scelta rapida. |
CMFCShellTreeCtrl::GetFlags | Restituisce una combinazione di flag passati a IShellFolder::EnumObjects. |
CMFCShellTreeCtrl::GetItemPath | Recupera il percorso di un elemento. |
CMFCShellTreeCtrl::GetRelatedList | Restituisce un puntatore all'oggetto Classe CMFCShellListCtrl utilizzato insieme a questo CMFCShellTreeCtrl oggetto per creare una finestra simile a Explorer. |
CMFCShellTreeCtrl::OnChildNotify | Questa funzione membro viene chiamata dalla finestra padre di questa finestra quando riceve un messaggio di notifica applicabile a questa finestra. (sostituzioni )CWnd::OnChildNotify. |
CMFCShellTreeCtrl::OnGetItemIcon | |
CMFCShellTreeCtrl::OnGetItemText | |
CMFCShellTreeCtrl::Refresh | Aggiorna e aggiorna l'oggetto corrente CMFCShellTreeCtrl . |
CMFCShellTreeCtrl::SelectPath | Seleziona l'elemento di controllo albero appropriato in base a un percorso PIDL o stringa fornito. |
CMFCShellTreeCtrl::SetFlags | Imposta i flag per filtrare il contesto della struttura ad albero (simile ai flag usati da IShellFolder::EnumObjects ). |
CMFCShellTreeCtrl::SetRelatedList | Imposta una relazione tra l'oggetto corrente CMFCShellTreeCtrl e un CMFCShellListCtrl oggetto . |
Osservazioni:
Questa classe estende la classe abilitando il CTreeCtrl
programma per includere gli elementi della shell di Windows nell'albero. Questa classe può essere associata a un CMFCShellListCtrl
oggetto per creare una finestra completa di Explorer. Quindi, selezionando un elemento nell'albero verrà visualizzato un elenco di elementi della shell di Windows nell'elenco associato.
Gerarchia di ereditarietà
CMFCShellTreeCtrl
Requisiti
Intestazione: afxshelltreeCtrl.h
Esempio
Nell'esempio riportato di seguito viene illustrato come creare un oggetto della classe CMFCShellTreeCtrl
. Questo frammento di codice fa parte dell'esempio explorer.
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
Abilita il menu di scelta rapida.
void EnableShellContextMenu(BOOL bEnable = TRUE);
Parametri
bEnable
[in] Valore booleano che specifica se abilitare il menu di scelta rapida.
CMFCShellTreeCtrl::GetFlags
Restituisce i flag impostati per l'oggetto Classe CMFCShellTreeCtrl.
DWORD GetFlags() const;
Valore restituito
Valore DWORD che specifica la combinazione di flag attualmente impostati.
Osservazioni:
I flag impostati in CMFCShellTreeCtrl
vengono inviati al metodo IShellFolder::EnumObjects ogni volta che l'oggetto viene aggiornato. È possibile modificare i flag con il metodo CMFCShellTreeCtrl::SetFlags .
CMFCShellTreeCtrl::GetItemPath
Recupera il percorso di un elemento nell'oggetto Classe CMFCShellTreeCtrl.
BOOL GetItemPath(
CString& strPath,
HTREEITEM htreeItem = NULL) const;
Parametri
strPath
[out] Riferimento a un parametro stringa. Il metodo scrive il percorso dell'elemento in questo parametro.
htreeItem
[in] Il metodo recupera il percorso per questo elemento del controllo albero.
Valore restituito
Valore diverso da zero in caso di esito positivo, 0 in caso contrario.
Osservazioni:
Se questo metodo ha esito negativo, strPath contiene la stringa vuota.
Se non si specifica hTreeItem, questo metodo tenta di ottenere la stringa per l'elemento attualmente selezionato. Se non è selezionato alcun elemento e hTreeItem è NULL, questo metodo ha esito negativo.
CMFCShellTreeCtrl::GetRelatedList
Restituisce un puntatore all'oggetto Classe CMFCShellListCtrl associato a questo oggetto CMFCShellTreeCtrl .
CMFCShellListCtrl* GetRelatedList() const;
Valore restituito
Puntatore all'oggetto CMFCShellListCtrl
associato a questo oggetto controllo albero.
Osservazioni:
Usando un CMFCShellListCtrl
oggetto insieme a un CMFCShellTreeCtrl
oggetto, è possibile creare una finestra simile a Explorer. Usare il metodo CMFCShellTreeCtrl::SetRelatedList per associare le due classi. Dopo l'associazione, il framework aggiorna automaticamente se CMFCShellListCtrl
la selezione viene CMFCShellTreeCtrl
modificata.
CMFCShellTreeCtrl::OnChildNotify
virtual BOOL OnChildNotify(
UINT message,
WPARAM wParam,
LPARAM lParam,
LRESULT* pLResult);
Parametri
[in] Messaggio
[in] wParam
[in] lParam
[in] pLResult
Valore restituito
Osservazioni:
CMFCShellTreeCtrl::OnGetItemIcon
virtual int OnGetItemIcon(
LPAFX_SHELLITEMINFO pItem,
BOOL bSelected);
Parametri
[in] pItem
[in] bSelected
Valore restituito
Osservazioni:
CMFCShellTreeCtrl::OnGetItemText
virtual CString OnGetItemText(LPAFX_SHELLITEMINFO pItem);
Parametri
[in] pItem
Valore restituito
Osservazioni:
CMFCShellTreeCtrl::Refresh
Aggiorna e aggiorna CMFCShellTreeCtrl.
void Refresh();
Osservazioni:
Chiamare questo metodo per aggiornare la gerarchia degli elementi visualizzati in CMFCShellTreeCtrl
.
CMFCShellTreeCtrl::SelectPath
Seleziona un elemento nella classe CMFCShellTreeCtrl in base al percorso specificato.
BOOL SelectPath(LPCTSTR lpszPath);
BOOL SelectPath(LPCITEMIDLIST lpidl);
Parametri
lpszPath
[in] Stringa che specifica il percorso di un elemento.
lpidl
[in] PIDL che specifica l'elemento
Valore restituito
S_OK se ha esito positivo; E_FAIL in caso contrario.
CMFCShellTreeCtrl::SetFlags
Imposta i flag per filtrare il contesto della struttura ad albero.
void SetFlags(
DWORD dwFlags,
BOOL bRefresh = TRUE);
Parametri
dwFlags
[in] Flag da impostare.
bRefresh
[in] Valore booleano che specifica se deve CMFCShellTreeCtrl
essere aggiornato immediatamente.
Osservazioni:
CMFCShellTreeCtrl
Passa tutti i flag set a IShellFolder::EnumObjects. Per altre informazioni sui valori di flag diversi, vedere IShellFolder::EnumObjects.
CMFCShellTreeCtrl::SetRelatedList
Associa un oggetto CMFCShellListCtrl a un oggetto CMFCShellTreeCtrl .
void SetRelatedList(CMFCShellListCtrl* pShellList);
Parametri
pShellList
[in] Puntatore a un CMFCShellListCtrl
oggetto .
Osservazioni:
Questo metodo associa un oggetto CMFCShellListCtrl
a un oggetto CMFCShellTreeCtrl
. Questi oggetti possono essere visualizzati come una finestra simile a Esplora risorse: se l'utente seleziona un oggetto in CMFCShellTreeCtrl
, gli elementi associati in CMFCShellListCtrl
verranno aggiornati automaticamente.
Usare il metodo CMFCShellTreeCtrl::GetRelatedList per recuperare l'oggetto CMFCShellListCtrl
associato a un oggetto CMFCShellTreeCtrl
.
Vedi anche
Grafico della gerarchia
Classi
Classe CTreeCtrl
Classe CMFCShellListCtrl