Share via


CMFCShellListCtrl-klasse

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

De CMFCShellListCtrl klasse biedt functionaliteit voor Windows-lijstbeheer en breidt deze uit door de mogelijkheid om een lijst met shell-items weer te geven.

Syntaxis

class CMFCShellListCtrl : public CMFCListCtrl

Leden

Openbare methoden

Naam Description
CMFCShellListCtrl::D isplayFolder Geeft een lijst weer met items die zijn opgenomen in een opgegeven map.
CMFCShellListCtrl::D isplayParentFolder Geeft een lijst weer met items die zijn opgenomen in de map die het bovenliggende item is van de momenteel weergegeven map.
CMFCShellListCtrl::EnableShellContextMenu Hiermee schakelt u het snelmenu in of uit.
CMFCShellListCtrl::GetCurrentFolder Hiermee wordt het pad van de huidige map opgehaald.
CMFCShellListCtrl::GetCurrentFolderName Hiermee haalt u de naam van de huidige map op.
CMFCShellListCtrl::GetCurrentItemIdList Retourneert de PIDL van het huidige item voor lijstbeheer.
CMFCShellListCtrl::GetCurrentShellFolder Retourneert een aanwijzer naar de huidige Shell-map.
CMFCShellListCtrl::GetItemPath Retourneert het tekstpad van een item.
CMFCShellListCtrl::GetItemTypes Retourneert Shell-itemtypen die worden weergegeven door het lijstbeheer.
CMFCShellListCtrl::IsDesktop Controleert of de geselecteerde map de bureaubladmap is.
CMFCShellListCtrl::OnCompareItems In het framework wordt deze methode aangeroepen wanneer er twee items worden vergeleken. (Hiermee wordt CMFCListCtrl::OnCompareItems overschreven.)
CMFCShellListCtrl::OnFormatFileDate Aangeroepen wanneer het framework de bestandsdatum ophaalt die wordt weergegeven door het lijstbeheer.
CMFCShellListCtrl::OnFormatFilesize Aangeroepen wanneer het framework de bestandsgrootte van een lijstbeheer converteert.
CMFCShellListCtrl::OnGetItemIcon Aangeroepen wanneer het framework het pictogram van een lijstbeheeritem ophaalt.
CMFCShellListCtrl::OnGetItemText Aangeroepen wanneer het framework de tekst van een lijstbeheeritem converteert.
CMFCShellListCtrl::OnSetColumns Aangeroepen door het framework wanneer de namen van de kolommen worden ingesteld.
CMFCShellListCtrl::Refresh Hiermee vernieuwt en wordt het besturingselement voor de lijst opnieuw weergegeven.
CMFCShellListCtrl::SetItemTypes Hiermee stelt u het type items in dat wordt weergegeven door het lijstbeheer.

Opmerkingen

De CMFCShellListCtrl klasse breidt de functionaliteit van de CMFCListCtrl-klasse uit door uw programma in staat te stellen Windows Shell-items weer te geven. De weergave-indeling die wordt gebruikt, lijkt op die van een lijstweergave voor een Verkenner-venster.

Een CMFCShellTreeCtrl-object kan worden gekoppeld aan een CMFCShellListCtrl object om een volledig Verkenner-venster te maken. Als u vervolgens een item in het CMFCShellTreeCtrl item selecteert, wordt de CMFCShellListCtrl inhoud van het geselecteerde item weergegeven.

Example

In het volgende voorbeeld ziet u hoe u een object van de CMFCShellListCtrl klasse maakt en hoe u de bovenliggende map van de huidige weergegeven map weergeeft. Dit codefragment maakt deel uit van het Explorer-voorbeeld.

CMFCShellListCtrl m_wndList;
CRect rectDummy(0, 0, 0, 0);
// The this pointer points to CExplorerView class which extends the CView class.
m_wndList.Create(WS_CHILD | WS_VISIBLE | LVS_REPORT, rectDummy, this, 1);
m_wndList.DisplayParentFolder();

Overnamehiërarchie

CObject

CCmdTarget-

CWnd

CListCtrl

CMFCListCtrl

CMFCShellListCtrl

Requirements

Header: afxshelllistCtrl.h

CMFCShellListCtrl::D isplayFolder

Geeft een lijst weer met items die zich in de opgegeven map bevinden.

virtual HRESULT DisplayFolder(LPCTSTR lpszPath);
virtual HRESULT DisplayFolder(LPAFX_SHELLITEMINFO lpItemInfo);

Parameterwaarden

lpszPath
[in] Een tekenreeks die het pad van een map bevat.

lpItemInfo
[in] Een aanwijzer naar een LPAFX_SHELLITEMINFO structuur die een map beschrijft die moet worden weergegeven.

Retourwaarde

S_OK indien geslaagd; E_FAIL anders.

CMFCShellListCtrl::D isplayParentFolder

Hiermee werkt u het CMFCShellListCtrl-object bij om de bovenliggende map van de momenteel weergegeven map weer te geven.

virtual HRESULT DisplayParentFolder();

Retourwaarde

S_OK indien geslaagd; E_FAIL anders.

CMFCShellListCtrl::EnableShellContextMenu

Hiermee schakelt u het snelmenu in.

void EnableShellContextMenu(BOOL bEnable = TRUE);

Parameterwaarden

bEnable
[in] Een Booleaanse waarde die aangeeft of het framework het snelmenu inschakelt.

CMFCShellListCtrl::GetCurrentFolder

Hiermee wordt het pad van de geselecteerde map opgehaald in het CMFCShellListCtrl-object .

BOOL GetCurrentFolder(CString& strPath) const;

Parameterwaarden

strPath
[uit] Een verwijzing naar een tekenreeksparameter waarin de methode het pad schrijft.

Retourwaarde

Niet-nul indien geslaagd; 0 anders.

Opmerkingen

Deze methode mislukt als er geen map is geselecteerd in de CMFCShellListCtrlmap .

CMFCShellListCtrl::GetCurrentFolderName

Hiermee wordt de naam van de geselecteerde map opgehaald in het CMFCShellListCtrl-object .

BOOL GetCurrentFolderName(CString& strName) const;

Parameterwaarden

strName
[uit] Een verwijzing naar een tekenreeksparameter waarin de methode de naam schrijft.

Retourwaarde

Niet-nul indien geslaagd; 0 anders.

Opmerkingen

Deze methode mislukt als er geen map is geselecteerd in de CMFCShellListCtrlmap .

CMFCShellListCtrl::GetCurrentItemIdList

Retourneert de PIDL van het geselecteerde item.

LPITEMIDLIST GetCurrentItemIdList() const;

Retourwaarde

De PIDL van het huidige item.

CMFCShellListCtrl::GetCurrentShellFolder

Hiermee wordt een aanwijzer opgehaald naar het geselecteerde item in het CMFCShellListCtrl-object .

const IShellFolder* GetCurrentShellFolder() const;

Retourwaarde

Een aanwijzer naar de IShellFolder-interface voor het geselecteerde object.

Opmerkingen

Deze methode retourneert NULL als er momenteel geen object is geselecteerd.

CMFCShellListCtrl::GetItemPath

Hiermee wordt het pad voor een item opgehaald.

BOOL GetItemPath(
    CString& strPath,
    int iItem) const;

Parameterwaarden

strPath
[uit] Een verwijzing naar een tekenreeks die het pad ontvangt.

iItem
[in] De index van het lijstitem.

Retourwaarde

WAAR indien geslaagd; ANDERS ONWAAR.

Opmerkingen

De index die door iItem wordt geleverd, is gebaseerd op de items die momenteel worden weergegeven door het CMFCShellListCtrl-klasseobject .

CMFCShellListCtrl::GetItemTypes

Retourneert het type items dat wordt weergegeven door het CMFCShellListCtrl-object .

SHCONTF GetItemTypes() const;

Retourwaarde

Een SHCONTF-waarde die het type items bevat dat wordt vermeld in de CMFCShellListCtrl.

Opmerkingen

Als u het type items wilt instellen dat wordt vermeld in een CMFCShellListCtrl, roept u CMFCShellListCtrl::SetItemTypes aan.

CMFCShellListCtrl::IsDesktop

Bepaalt of de map die wordt weergegeven in het CMFCShellListCtrl-object de bureaubladmap is.

BOOL IsDesktop() const;

Retourwaarde

WAAR als de weergegeven map de bureaubladmap is; ANDERS ONWAAR.

CMFCShellListCtrl::OnCompareItems

Zie de broncode in de map VC\atlmfc\src\mfc van uw Visual Studio-installatie voor meer informatie.

virtual int OnCompareItems(
    LPARAM lParam1,
    LPARAM lParam2,
    int iColumn);

Parameterwaarden

[in] lParam1
[in] lParam2
[in] iColumn

Retourwaarde

Opmerkingen

CMFCShellListCtrl::OnFormatFileDate

In het framework wordt deze methode aangeroepen wanneer de datum die aan een object is gekoppeld, moet worden geconverteerd naar een tekenreeks.

virtual void OnFormatFileDate(
    const CTime& tmFile,
    CString& str);

Parameterwaarden

tmFile
[in] De datum die aan een bestand is gekoppeld.

Str
[uit] Een tekenreeks die de opgemaakte bestandsdatum bevat.

Opmerkingen

Wanneer een CMFCShellListCtrl-klasseobject de datum weergeeft die aan een bestand is gekoppeld, moet deze datum worden geconverteerd naar een tekenreeksindeling. De CMFCShellListCtrl methode gebruikt deze methode om die conversie te maken. Deze methode gebruikt standaard de huidige landinstelling om de datum in een tekenreeks op te maken.

CMFCShellListCtrl::OnFormatFilesize

In het framework wordt deze methode aangeroepen wanneer de grootte van een object wordt geconverteerd naar een tekenreeks.

virtual void OnFormatFileSize(
    long lFileSize,
    CString& str);

Parameterwaarden

lFileSize
[in] De grootte van het bestand dat door het framework wordt weergegeven.

Str
[uit] Een tekenreeks die de opgemaakte bestandsgrootte bevat.

Opmerkingen

Wanneer een CMFCShellListCtrl-klasseobject de grootte van een bestand moet weergeven, moet het de bestandsgrootte converteren naar een tekenreeksindeling. De CMFCShellListCtrl methode gebruikt deze methode om die conversie te maken. Deze methode converteert standaard de bestandsgrootte van bytes naar kilobytes en gebruikt vervolgens de huidige landinstelling om de grootte in tekenreeks op te maken.

CMFCShellListCtrl::OnGetItemIcon

In het framework wordt deze methode aangeroepen om het pictogram op te halen dat is gekoppeld aan een shell-lijstitem.

virtual int OnGetItemIcon(
    int iItem,
    LPAFX_SHELLITEMINFO pItem);

Parameterwaarden

iItem
[in] De itemindex.

pItem
[in] Een LPAFX_SHELLITEMINFO parameter die het item beschrijft.

Retourwaarde

De index van de pictogramafbeelding indien geslaagd; -1 als de functie mislukt.

Opmerkingen

De index van de pictogramafbeelding is gebaseerd op de lijst met systeeminstallatiekopieën.

Deze methode is standaard afhankelijk van de parameter pItem . De waarde van iItem wordt niet gebruikt in de standaardimplementatie. U kunt iItem gebruiken om aangepast gedrag te implementeren.

CMFCShellListCtrl::OnGetItemText

In het framework wordt deze methode aangeroepen wanneer de tekst van een shell-item moet worden opgehaald.

virtual CString OnGetItemText(
    int iItem,
    int iColumn,
    LPAFX_SHELLITEMINFO pItem);

Parameterwaarden

iItem
[in] De itemindex.

iColumn
[in] De interessekolom.

pItem
[in] Een LPAFX_SHELLITEMINFO parameter die het item beschrijft.

Retourwaarde

Een CString met de tekst die aan het item is gekoppeld.

Opmerkingen

Elk item in het CMFCShellListCtrl object kan tekst bevatten in een of meer kolommen. Wanneer dit framework deze methode aanroept, wordt de kolom opgegeven waarin deze is geïnteresseerd. Als u deze functie handmatig aanroept, moet u ook de kolom opgeven waarin u geïnteresseerd bent.

Deze methode is standaard afhankelijk van de parameter pItem om te bepalen welk item moet worden verwerkt. De waarde van iItem wordt niet gebruikt in de standaardimplementatie.

CMFCShellListCtrl::OnSetColumns

In het framework wordt deze methode aangeroepen wanneer de namen van de kolommen worden ingesteld.

virtual void OnSetColumns();

Opmerkingen

Standaard worden in het framework vier kolommen in een CMFCShellListCtrl object gemaakt. De namen van deze kolommen zijn Naam, Grootte, Type en Gewijzigd. U kunt deze methode overschrijven om het aantal kolommen en hun namen aan te passen.

CMFCShellListCtrl::Refresh

Hiermee vernieuwt en wordt het CMFCShellListCtrl-object vernieuwd en opnieuw geplaatst.

virtual HRESULT Refresh();

Retourwaarde

S_OK indien geslaagd; anders een foutwaarde.

Opmerkingen

Roep deze methode aan om de lijst met items te vernieuwen die door het CMFCShellListCtrl object worden weergegeven.

CMFCShellListCtrl::SetItemTypes

Hiermee stelt u het type items in dat wordt vermeld in het CMFCShellListCtrl-object .

void SetItemTypes(SHCONTF nTypes);

Parameterwaarden

nTypes
[in] Een lijst met itemtypen die door het CMFCShellListCtrl object worden ondersteund.

Opmerkingen

Zie SHCONTF voor meer informatie over de lijst met itemtypen.

Zie ook

Hiërarchiegrafiek
Klassen
CMFCListCtrl-klasse
CMFCShellTreeCtrl-klasse