Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
A CMFCShellListCtrl classe fornece funcionalidade de controlo de listas do Windows e expande-a ao incluir a capacidade de mostrar uma lista de itens do shell.
Sintaxe
class CMFCShellListCtrl : public CMFCListCtrl
Membros
Métodos Públicos
| Nome | Description |
|---|---|
| CMFCShellListCtrl::D isplayFolder | Apresenta uma lista de itens contidos numa pasta fornecida. |
| CMFCShellListCtrl::D isplayParentFolder | Mostra uma lista de itens contidos na pasta que é o pai da pasta atualmente apresentada. |
| CMFCShellListCtrl::EnableShellContextMenu | Ativa ou desativa o menu de atalho. |
| CMFCShellListCtrl::GetCurrentFolder | Recupera o caminho da pasta atual. |
| CMFCShellListCtrl::GetCurrentFolderName | Recupera o nome da pasta atual. |
| CMFCShellListCtrl::GetCurrentItemIdList | Devolve o PIDL do item atual de controlo da lista. |
| CMFCShellListCtrl::GetCurrentShellFolder | Devolve um ponteiro para a pasta atual do Shell. |
| CMFCShellListCtrl::GetItemPath | Devolve o caminho textual de um item. |
| CMFCShellListCtrl::GetItemTypes | Devolve Tipos de itens da Shell que são exibidos pelo controlo da lista. |
| CMFCShellListCtrl::IsDesktop | Verifica se a pasta atualmente selecionada é a pasta do ambiente de trabalho. |
| CMFCShellListCtrl::OnCompareItems | A estrutura chama a este método quando compara dois itens. (Sobrepõe CMFCListCtrl::OnCompareItems.) |
| CMFCShellListCtrl::OnFormatFileDate | Chamado quando o framework recupera a data do ficheiro apresentada pelo controlo de lista. |
| CMFCShellListCtrl::OnFormatFileSize | Chamado quando o framework converte o tamanho do ficheiro de um controlo de lista. |
| CMFCShellListCtrl::OnGetItemIcon | Chamado quando o framework recupera o ícone de um item de controlo de lista. |
| CMFCShellListCtrl::OnGetItemText | Chamada quando a framework converte o texto de um item de controlo de lista. |
| CMFCShellListCtrl::OnSetColumns | Chamada pelo framework quando define os nomes das colunas. |
| CMFCShellListCtrl::Refresh | Atualiza e repinta o controlo da lista. |
| CMFCShellListCtrl::SetItemTypes. | Define o tipo de itens apresentados pelo controlo de lista. |
Observações
A CMFCShellListCtrl classe estende a funcionalidade da Classe CMFCListCtrl ao permitir que o seu programa liste itens do shell do Windows. O formato de visualização utilizado é semelhante ao de uma vista de lista para uma janela do Explorador.
Um objeto CMFCShellTreeCtrl pode ser associado a um CMFCShellListCtrl objeto para criar uma janela completa do Explorador. Depois, ao selecionar um item em , CMFCShellTreeCtrl o CMFCShellListCtrl objeto irá listar o conteúdo do item selecionado.
Example
O exemplo seguinte demonstra como criar um objeto da CMFCShellListCtrl classe e como mostrar a pasta principal da pasta atualmente apresentada. Este excerto de código faz parte do exemplo do Explorer.
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();
Hierarquia de herança
CMFCShellListCtrl
Requerimentos
Cabeçalho: afxshelllistCtrl.h
CMFCShellListCtrl::D isplayFolder
Apresenta uma lista de itens contidos na pasta fornecida.
virtual HRESULT DisplayFolder(LPCTSTR lpszPath);
virtual HRESULT DisplayFolder(LPAFX_SHELLITEMINFO lpItemInfo);
Parâmetros
lpszPath
[dentro] Uma cadeia que contém o caminho de uma pasta.
lpItemInfo
[dentro] Um apontador para uma LPAFX_SHELLITEMINFO estrutura que descreve uma pasta a exibir.
Valor de retorno
S_OK se for bem-sucedido; E_FAIL caso contrário.
CMFCShellListCtrl::D isplayParentFolder
Atualiza o objeto CMFCShellListCtrl para mostrar a pasta principal da pasta atualmente apresentada.
virtual HRESULT DisplayParentFolder();
Valor de retorno
S_OK se for bem-sucedido; E_FAIL caso contrário.
CMFCShellListCtrl::EnableShellContextMenu
Ativa o menu de atalhos.
void EnableShellContextMenu(BOOL bEnable = TRUE);
Parâmetros
bEnable
[dentro] Um booleano que especifica se o framework permite o menu de atalho.
CMFCShellListCtrl::GetCurrentFolder
Recupera o caminho da pasta atualmente selecionada no objeto CMFCShellListCtrl .
BOOL GetCurrentFolder(CString& strPath) const;
Parâmetros
strPath
[fora] Uma referência a um parâmetro de string onde o método escreve o caminho.
Valor de retorno
Não nulo se for bem-sucedido; 0 caso contrário.
Observações
Este método falha se não houver nenhuma pasta selecionada no CMFCShellListCtrlarquivo .
CMFCShellListCtrl::GetCurrentFolderName
Recupera o nome da pasta atualmente selecionada no objeto CMFCShellListCtrl .
BOOL GetCurrentFolderName(CString& strName) const;
Parâmetros
strName
[fora] Uma referência a um parâmetro de cadeia onde o método escreve o nome.
Valor de retorno
Não nulo se for bem-sucedido; 0 caso contrário.
Observações
Este método falha se não houver nenhuma pasta selecionada no CMFCShellListCtrlarquivo .
CMFCShellListCtrl::GetCurrentItemIdList
Devolve o PIDL do item atualmente selecionado.
LPITEMIDLIST GetCurrentItemIdList() const;
Valor de retorno
O PIDL do item atual.
CMFCShellListCtrl::GetCurrentShellFolder
Recebe um ponteiro para o item atualmente selecionado no objeto CMFCShellListCtrl .
const IShellFolder* GetCurrentShellFolder() const;
Valor de retorno
Um apontador para a Interface IShellFolder para o objeto selecionado.
Observações
Este método devolve NULL se não for selecionado nenhum objeto no momento.
CMFCShellListCtrl::GetItemPath
Recupera o caminho de um item.
BOOL GetItemPath(
CString& strPath,
int iItem) const;
Parâmetros
strPath
[fora] Uma referência a uma cadeia que recebe o caminho.
iItem
[dentro] O índice do item da lista.
Valor de retorno
VERDADEIRO se for bem-sucedido; FALSO, caso contrário.
Observações
O índice fornecido pelo iItem baseia-se nos itens atualmente apresentados pelo objeto CMFCShellListCtrl Class .
CMFCShellListCtrl::GetItemTypes
Devolve o tipo de itens apresentados pelo objeto CMFCShellListCtrl .
SHCONTF GetItemTypes() const;
Valor de retorno
Um valor SHCONTF que contém o tipo de itens listados no CMFCShellListCtrlarquivo .
Observações
Para definir o tipo de itens listados num CMFCShellListCtrl, chame CMFCShellListCtrl::SetItemTypes.
CMFCShellListCtrl::IsDesktop
Determina se a pasta que é exibida no objeto CMFCShellListCtrl é a pasta do ambiente de trabalho.
BOOL IsDesktop() const;
Valor de retorno
TRUE se a pasta apresentada for a pasta do ambiente de trabalho; FALSO, caso contrário.
CMFCShellListCtrl::OnCompareItems
Para mais detalhes, consulte o código-fonte localizado na pasta VC\atlmfc\src\mfc da sua instalação no Visual Studio.
virtual int OnCompareItems(
LPARAM lParam1,
LPARAM lParam2,
int iColumn);
Parâmetros
[dentro] lParam1
[dentro] lParam2
[dentro] iColumn
Valor de retorno
Observações
CMFCShellListCtrl::OnFormatFileDate
O framework chama a este método quando tem de converter a data associada a um objeto numa string.
virtual void OnFormatFileDate(
const CTime& tmFile,
CString& str);
Parâmetros
tmFile
[dentro] A data associada a um ficheiro.
STR
[fora] Uma cadeia que contém a data do ficheiro formatada.
Observações
Quando um objeto CMFCShellListCtrl Class apresenta a data associada a um ficheiro, deve converter essa data para um formato de string. Usa CMFCShellListCtrl este método para fazer essa conversão. Por defeito, este método usa a localização atual para formatar a data numa cadeia.
CMFCShellListCtrl::OnFormatFileSize
O framework chama este método quando converte o tamanho de um objeto numa cadeia.
virtual void OnFormatFileSize(
long lFileSize,
CString& str);
Parâmetros
lFileSize
[dentro] O tamanho do ficheiro que o framework irá mostrar.
STR
[fora] Uma cadeia que contém o tamanho do ficheiro formatado.
Observações
Quando um objeto de classe CMFCShellListCtrl precisa de mostrar o tamanho de um ficheiro, tem de converter o tamanho do ficheiro para um formato de string. Usa CMFCShellListCtrl este método para fazer essa conversão. Por defeito, este método converte o tamanho do ficheiro de bytes para kilobytes e depois usa a localização atual para formatar o tamanho em string.
CMFCShellListCtrl::OnGetItemIcon
O framework chama este método para recuperar o ícone associado a um item da lista de shells.
virtual int OnGetItemIcon(
int iItem,
LPAFX_SHELLITEMINFO pItem);
Parâmetros
iItem
[dentro] O índice de itens.
pItem
[dentro] Um parâmetro LPAFX_SHELLITEMINFO que descreve o item.
Valor de retorno
O índice da imagem do ícone se for bem-sucedido; -1 se a função falhar.
Observações
O índice de imagens de ícones baseia-se na lista de imagens do sistema.
Por defeito, este método baseia-se no parâmetro pItem . O valor do iItem não é usado na implementação padrão. Pode usar o iItem para implementar comportamentos personalizados.
CMFCShellListCtrl::OnGetItemText
O framework chama a este método quando tem de recuperar o texto de um item shell.
virtual CString OnGetItemText(
int iItem,
int iColumn,
LPAFX_SHELLITEMINFO pItem);
Parâmetros
iItem
[dentro] O índice de itens.
iColumn
[dentro] A coluna de interesse.
pItem
[dentro] Um parâmetro LPAFX_SHELLITEMINFO que descreve o item.
Valor de retorno
A CString que contém o texto associado ao item.
Observações
Cada item do CMFCShellListCtrl objeto pode ter texto numa ou mais colunas. Quando a estrutura chama este método, especifica a coluna que lhe interessa. Se chamar esta função manualmente, deve também especificar a coluna que lhe interessa.
Por defeito, este método depende do parâmetro pItem para determinar qual item processar. O valor do iItem não é usado na implementação padrão.
CMFCShellListCtrl::OnSetColumns
A estrutura chama este método quando define os nomes das colunas.
virtual void OnSetColumns();
Observações
Por defeito, o framework cria quatro colunas num CMFCShellListCtrl objeto. Os nomes destas colunas são Nome, Tamanho, Tipo e Modificado. Pode sobrescrever este método para personalizar o número de colunas e os seus nomes.
CMFCShellListCtrl::Refresh
Atualiza e repinta o objeto CMFCShellListCtrl .
virtual HRESULT Refresh();
Valor de retorno
S_OK se for bem-sucedido; caso contrário, um valor de erro.
Observações
Chame este método para atualizar a lista de itens apresentados pelo CMFCShellListCtrl objeto.
CMFCShellListCtrl::SetItemTypes.
Define o tipo de itens listados no objeto CMFCShellListCtrl .
void SetItemTypes(SHCONTF nTypes);
Parâmetros
nTipos
[dentro] Uma lista dos tipos de itens que o CMFCShellListCtrl objeto suporta.
Observações
Para mais informações sobre a lista de tipos de itens, consulte SHCONTF.
Consulte também
Gráfico de Hierarquia
Classes
Classe CMFCListCtrl
Classe CMFCShellTreeCtrl