CMFCShellListCtrl, classe
La CMFCShellListCtrl
classe fournit des fonctionnalités de contrôle de liste Windows et l’étend en incluant la possibilité d’afficher une liste d’éléments d’interpréteur de commandes.
Syntaxe
class CMFCShellListCtrl : public CMFCListCtrl
Membres
Méthodes publiques
Nom | Description |
---|---|
CMFCShellListCtrl ::D isplayFolder | Affiche une liste d’éléments contenus dans un dossier fourni. |
CMFCShellListCtrl ::D isplayParentFolder | Affiche une liste d’éléments contenus dans le dossier qui est le parent du dossier actuellement affiché. |
CMFCShellListCtrl ::EnableShellContextMenu | Active ou désactive le menu contextuel. |
CMFCShellListCtrl ::GetCurrentFolder | Récupère le chemin d’accès du dossier actif. |
CMFCShellListCtrl ::GetCurrentFolderName | Récupère le nom du dossier actif. |
CMFCShellListCtrl ::GetCurrentItemIdList | Retourne le code PIDL de l’élément de contrôle de liste actif. |
CMFCShellListCtrl ::GetCurrentShellFolder | Retourne un pointeur vers le dossier Shell actuel. |
CMFCShellListCtrl ::GetItemPath | Retourne le chemin d’accès textuel d’un élément. |
CMFCShellListCtrl ::GetItemTypes | Retourne les types d’éléments Shell affichés par le contrôle de liste. |
CMFCShellListCtrl ::IsDesktop | Vérifie si le dossier actuellement sélectionné est le dossier de bureau. |
CMFCShellListCtrl ::OnCompareItems | L’infrastructure appelle cette méthode lorsqu’elle compare deux éléments. (Remplacements CMFCListCtrl ::OnCompareItems.) |
CMFCShellListCtrl ::OnFormatFileDate | Appelé lorsque l’infrastructure récupère la date du fichier affichée par le contrôle de liste. |
CMFCShellListCtrl ::OnFormatFileSize | Appelé lorsque l’infrastructure convertit la taille de fichier d’un contrôle de liste. |
CMFCShellListCtrl ::OnGetItemIcon | Appelé lorsque l’infrastructure récupère l’icône d’un élément de contrôle de liste. |
CMFCShellListCtrl ::OnGetItemText | Appelé lorsque l’infrastructure convertit le texte d’un élément de contrôle de liste. |
CMFCShellListCtrl ::OnSetColumns | Appelé par l’infrastructure lorsqu’il définit les noms des colonnes. |
CMFCShellListCtrl ::Refresh | Actualise et repeint le contrôle de liste. |
CMFCShellListCtrl ::SetItemTypes | Définit le type d’éléments affichés par le contrôle de liste. |
Notes
La CMFCShellListCtrl
classe étend les fonctionnalités de la classe CMFCListCtrl en permettant à votre programme de répertorier les éléments de l’interpréteur de commandes Windows. Le format d’affichage utilisé est semblable à celui d’une vue de liste pour une fenêtre Explorateur.
Un objet CMFCShellTreeCtrl peut être associé à un CMFCShellListCtrl
objet pour créer une fenêtre d’Explorateur complète. Ensuite, la sélection d’un élément dans l’objet CMFCShellTreeCtrl
entraîne la CMFCShellListCtrl
liste du contenu de l’élément sélectionné.
Exemple
L’exemple suivant montre comment créer un objet de la CMFCShellListCtrl
classe et comment afficher le dossier parent du dossier actuellement affiché. Cet extrait de code fait partie de l’exemple d’Explorateur.
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();
Hiérarchie d'héritage
CMFCShellListCtrl
Spécifications
En-tête : afxshelllistCtrl.h
CMFCShellListCtrl ::D isplayFolder
Affiche une liste d’éléments contenus dans le dossier fourni.
virtual HRESULT DisplayFolder(LPCTSTR lpszPath);
virtual HRESULT DisplayFolder(LPAFX_SHELLITEMINFO lpItemInfo);
Paramètres
lpszPath
[in] Chaîne qui contient le chemin d’accès d’un dossier.
lpItemInfo
[in] Pointeur vers une LPAFX_SHELLITEMINFO
structure qui décrit un dossier à afficher.
Valeur de retour
S_OK en cas de réussite ; E_FAIL sinon.
CMFCShellListCtrl ::D isplayParentFolder
Met à jour l’objet CMFCShellListCtrl pour afficher le dossier parent du dossier actuellement affiché.
virtual HRESULT DisplayParentFolder();
Valeur de retour
S_OK en cas de réussite ; E_FAIL sinon.
CMFCShellListCtrl ::EnableShellContextMenu
Active le menu contextuel.
void EnableShellContextMenu(BOOL bEnable = TRUE);
Paramètres
bEnable
[in] Boolean qui spécifie si l’infrastructure active le menu contextuel.
CMFCShellListCtrl ::GetCurrentFolder
Récupère le chemin d’accès du dossier actuellement sélectionné dans l’objet CMFCShellListCtrl .
BOOL GetCurrentFolder(CString& strPath) const;
Paramètres
strPath
[out] Référence à un paramètre de chaîne où la méthode écrit le chemin d’accès.
Valeur de retour
Différent de zéro si cela ; Sinon, 0.
Notes
Cette méthode échoue si aucun dossier n’est sélectionné dans le CMFCShellListCtrl
fichier .
CMFCShellListCtrl ::GetCurrentFolderName
Récupère le nom du dossier actuellement sélectionné dans l’objet CMFCShellListCtrl .
BOOL GetCurrentFolderName(CString& strName) const;
Paramètres
strName
[out] Référence à un paramètre de chaîne où la méthode écrit le nom.
Valeur de retour
Différent de zéro si cela ; Sinon, 0.
Notes
Cette méthode échoue si aucun dossier n’est sélectionné dans le CMFCShellListCtrl
fichier .
CMFCShellListCtrl ::GetCurrentItemIdList
Retourne le code PIDL de l’élément actuellement sélectionné.
LPITEMIDLIST GetCurrentItemIdList() const;
Valeur de retour
PIDL de l’élément actif.
CMFCShellListCtrl ::GetCurrentShellFolder
Obtient un pointeur vers l’élément actuellement sélectionné dans l’objet CMFCShellListCtrl .
const IShellFolder* GetCurrentShellFolder() const;
Valeur de retour
Pointeur vers l’interface IShellFolder pour l’objet sélectionné.
Notes
Cette méthode retourne NULL si aucun objet n’est actuellement sélectionné.
CMFCShellListCtrl ::GetItemPath
Récupère le chemin d’accès d’un élément.
BOOL GetItemPath(
CString& strPath,
int iItem) const;
Paramètres
strPath
[out] Référence à une chaîne qui reçoit le chemin d’accès.
iItem
[in] Index de l’élément de liste.
Valeur de retour
TRUE si cela réussit ; FALSE dans le cas contraire.
Notes
L’index fourni par iItem est basé sur les éléments actuellement affichés par l’objet CMFCShellListCtrl, classe .
CMFCShellListCtrl ::GetItemTypes
Renvoie le type d’éléments affichés par l’objet CMFCShellListCtrl .
SHCONTF GetItemTypes() const;
Valeur de retour
Valeur SHCONTF qui contient le type d’éléments répertoriés dans le CMFCShellListCtrl
.
Notes
Pour définir le type d’éléments répertoriés dans un CMFCShellListCtrl
, appelez CMFCShellListCtrl ::SetItemTypes.
CMFCShellListCtrl ::IsDesktop
Détermine si le dossier affiché dans l’objet CMFCShellListCtrl est le dossier de bureau.
BOOL IsDesktop() const;
Valeur de retour
TRUE si le dossier affiché est le dossier de bureau ; FALSE dans le cas contraire.
CMFCShellListCtrl ::OnCompareItems
Pour plus d’informations, consultez le code source situé dans le dossier VC\atlmfc\src\mfc de votre installation de Visual Studio.
virtual int OnCompareItems(
LPARAM lParam1,
LPARAM lParam2,
int iColumn);
Paramètres
[in] lParam1
[in] lParam2
[in] iColumn
Valeur de retour
Notes
CMFCShellListCtrl ::OnFormatFileDate
L’infrastructure appelle cette méthode lorsqu’elle doit convertir la date associée à un objet en chaîne.
virtual void OnFormatFileDate(
const CTime& tmFile,
CString& str);
Paramètres
tmFile
[in] Date associée à un fichier.
str
[out] Chaîne qui contient la date du fichier mis en forme.
Notes
Lorsqu’un objet CMFCShellListCtrl Class affiche la date associée à un fichier, il doit convertir cette date au format de chaîne. Utilise CMFCShellListCtrl
cette méthode pour effectuer cette conversion. Par défaut, cette méthode utilise les paramètres régionaux actuels pour mettre en forme la date dans une chaîne.
CMFCShellListCtrl ::OnFormatFileSize
L’infrastructure appelle cette méthode lorsqu’elle convertit la taille d’un objet en chaîne.
virtual void OnFormatFileSize(
long lFileSize,
CString& str);
Paramètres
lFileSize
[in] Taille du fichier affiché par l’infrastructure.
str
[out] Chaîne qui contient la taille de fichier mise en forme.
Notes
Lorsqu’un objet CMFCShellListCtrl Class doit afficher la taille d’un fichier, il doit convertir la taille du fichier dans un format de chaîne. Utilise CMFCShellListCtrl
cette méthode pour effectuer cette conversion. Par défaut, cette méthode convertit la taille du fichier d’octets en kilo-octets, puis utilise les paramètres régionaux actuels pour mettre en forme la taille en chaîne.
CMFCShellListCtrl ::OnGetItemIcon
L’infrastructure appelle cette méthode pour récupérer l’icône associée à un élément de liste d’interpréteur de commandes.
virtual int OnGetItemIcon(
int iItem,
LPAFX_SHELLITEMINFO pItem);
Paramètres
iItem
[in] Index de l’élément.
pItem
[in] Paramètre LPAFX_SHELLITEMINFO qui décrit l’élément.
Valeur de retour
Index de l’image d’icône en cas de réussite ; -1 si la fonction échoue.
Notes
L’index d’image d’icône est basé sur la liste d’images système.
Par défaut, cette méthode s’appuie sur le paramètre pItem . La valeur d’iItem n’est pas utilisée dans l’implémentation par défaut. Vous pouvez utiliser iItem pour implémenter un comportement personnalisé.
CMFCShellListCtrl ::OnGetItemText
L’infrastructure appelle cette méthode lorsqu’elle doit récupérer le texte d’un élément d’interpréteur de commandes.
virtual CString OnGetItemText(
int iItem,
int iColumn,
LPAFX_SHELLITEMINFO pItem);
Paramètres
iItem
[in] Index de l’élément.
iColumn
[in] Colonne d’intérêt.
pItem
[in] Paramètre LPAFX_SHELLITEMINFO qui décrit l’élément.
Valeur de retour
Qui CString
contient le texte associé à l’élément.
Notes
Chaque élément de l’objet peut avoir du CMFCShellListCtrl
texte dans une ou plusieurs colonnes. Lorsque l’infrastructure appelle cette méthode, elle spécifie la colonne qui lui intéresse. Si vous appelez cette fonction manuellement, vous devez également spécifier la colonne qui vous intéresse.
Par défaut, cette méthode s’appuie sur le paramètre pItem pour déterminer l’élément à traiter. La valeur d’iItem n’est pas utilisée dans l’implémentation par défaut.
CMFCShellListCtrl ::OnSetColumns
L’infrastructure appelle cette méthode lorsqu’elle définit les noms des colonnes.
virtual void OnSetColumns();
Notes
Par défaut, l’infrastructure crée quatre colonnes dans un CMFCShellListCtrl
objet. Les noms de ces colonnes sont Name, Size, Type et Modified. Vous pouvez remplacer cette méthode pour personnaliser le nombre de colonnes et leurs noms.
CMFCShellListCtrl ::Refresh
Actualise et repeint l’objet CMFCShellListCtrl .
virtual HRESULT Refresh();
Valeur de retour
S_OK
si elle réussit ; sinon, valeur d’erreur.
Notes
Appelez cette méthode pour actualiser la liste des éléments affichés par l’objet CMFCShellListCtrl
.
CMFCShellListCtrl ::SetItemTypes
Définit le type d’éléments répertoriés dans l’objet CMFCShellListCtrl .
void SetItemTypes(SHCONTF nTypes);
Paramètres
nTypes
[in] Liste des types d’éléments pris en charge par l’objet CMFCShellListCtrl
.
Notes
Pour plus d’informations sur la liste des types d’éléments, consultez SHCONTF.
Voir aussi
Graphique hiérarchique
Classes
CMFCListCtrl, classe
CMFCShellTreeCtrl, classe