Partilhar via


CListCtrl::SortItems

Itens de exibição de lista de tipos usando uma função application-defined de comparação.

BOOL SortItems(
   PFNLVCOMPARE pfnCompare,
   DWORD_PTR dwData 
);

Parâmetros

  • [in] pfnCompare
    Endereço de função application-defined de comparação.

    A operação de tipo chama a função de comparação cada vez que o pedido relativo de dois itens de lista precisa ser determinado.A função de comparação deve ser um membro estático de uma classe ou uma função autônomo que não seja um membro de nenhuma classe.

  • [in] dwData
    Valor definido que é passado para a função de comparação.

Valor de retorno

true se o método com êxito; se não false.

Comentários

Este método altera o índice de cada item para refletir a nova seqüência.

A função de comparação, pfnCompare, tem a seguinte forma:

int CALLBACK CompareFunc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort);

A função de comparação deve retornar um valor negativo se o primeiro item preceder o segundo, um valor positivo se o primeiro item e o segundo, ou zera se os dois itens são iguais.

o parâmetro de lParam1 é o valor de 32 bits associado com o primeiro item que é comparado, e o parâmetro de lParam2 é o valor associado com o segundo item.Estes são os valores que foram especificados em lParam membro de estrutura de LVITEM de itens quando foram inseridos na lista.o parâmetro de lParamSort é o mesmo que o valor de dwData .

Este método envia a mensagem de LVM_SORTITEMS , que é descrita em Windows SDK.

Exemplo

O exemplo a seguir é uma função simples de comparação que resulta nos itens que estão sendo classificados por seus valores de lParam .

// Sort items by associated lParam
int CALLBACK CListCtrlDlg::MyCompareProc(LPARAM lParam1, LPARAM lParam2, 
    LPARAM lParamSort)
{
    UNREFERENCED_PARAMETER(lParamSort);

    return (int)(lParam1 - lParam2);
}
// Sort the items by passing in the comparison function.
void CListCtrlDlg::Sort()
{
    m_myListCtrl.SortItems(&CListCtrlDlg::MyCompareProc, 0);
}

Requisitos

Cabeçalho: afxcmn.h

Esse controle é suportado no Windows NT 3,51 ou posterior.

Consulte também

Referência

Classe de CListCtrl

Gráfico de hierarquia

CListCtrl::FindItem

CListCtrl::SortItemsEx