CListCtrl alle Items markieren
-
Hi, ich will in einem CListCtrl alle Items mti CTRL+A markieren.
void CProBetaViewSMD::OnCtrlA() { LVITEM lvi; CWnd* pWnd = GetFocus(); if(m_ctrlBaugruppen.m_hWnd == pWnd->m_hWnd) { for(int i=0;i<m_ctrlBaugruppen.GetItemCount()-1;i++) { m_ctrlBaugruppen.GetItem(&lvi); lvi.state = LVIS_SELECTED; lvi.mask = LVIF_STATE; lvi.stateMask = LVIS_SELECTED; m_ctrlBaugruppen.SetItem(&lvi); //m_ctrlBaugruppen.SetItemState(i,LVIS_SELECTED,LVIF_STATE); } } //pWnd = NULL; }
Klappt auch soweit das er in die schleife springt und keine Fehler wirft aber markiert it hinterher nichts.
Hat jemand ne Ahnung wie ich per Befehl ein Item in einem CListCtrl markieren kann? (Also wie wenn man mit der maus draufklickt)
-
check this out (CListCtrl. Ansicht "Liste"):
int iItemIdx = 2 // index position m_List.SetFocus(); m_List.SetItemState(iItemIdx,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED); m_List.EnsureVisible(iItemIdx, TRUE);
Diente bei mir ursprünglich für ne Listbox mit mehreren Spalten... aber beim Klick wird die gesamte Zeile markiert, nicht nur jener Eintrag in Spalte 1 an Position X.
-
funktioniert
vielen dank