Trier une CListCtrl (SortItems()) [MFC] - Programmation
Marsh Posté le 06-04-2002 à 15:35:40
Salut, Tout est dans le titre, voici le code qui compile mais qui trie pas : CFilDlg* fd; static int CALLBACK CompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort) { CListCtrl* pListCtrl = (CListCtrl*)lParamSort; CString strItem1 = pListCtrl->GetItemText(lParam1,0); CString strItem2 = pListCtrl->GetItemText(lParam2,0); return strcmp(strItem2,strItem1); } void MonThread(void *pDialog) { fd = (CFilDlg*)pDialog; //... fd->m_fil.SortItems(CompareProc,(LPARAM)fd->GetDlgItem(IDC_LIST1)); } Vous remarquerez que la fonction CompareProc sort tout droit du MSDN... (tri en ordre alphabétique inversé) Merci ANT
Marsh Posté le 07-04-2002 à 10:41:36
Make sure you enter the(*)required information where indicate.HTML code is not allowed
Marsh Posté le 06-04-2002 à 15:35:40
Salut,
Tout est dans le titre, voici le code qui compile mais qui trie pas :
CFilDlg* fd;
static int CALLBACK CompareProc(LPARAM lParam1, LPARAM lParam2, LPARAM lParamSort)
{
CListCtrl* pListCtrl = (CListCtrl*)lParamSort;
CString strItem1 = pListCtrl->GetItemText(lParam1,0);
CString strItem2 = pListCtrl->GetItemText(lParam2,0);
return strcmp(strItem2,strItem1);
}
void MonThread(void *pDialog)
{
fd = (CFilDlg*)pDialog;
//...
fd->m_fil.SortItems(CompareProc,(LPARAM)fd->GetDl
gItem(IDC_LIST1));
}
Vous remarquerez que la fonction CompareProc sort tout droit du MSDN... (tri en ordre alphabétique inversé)
Merci
ANT