List Control Probleme

Durch diese Style änderung wird aber nur das Item autom. markiert.
Das eigentliche Problem ist aber, dass wenn die ListControl den Fokus verliert, geht die Markierung auch verloren.
Es sollte aber das Item Markiert bleiben.
 
Um das Item zu markieren verwende
Code:
m_MyListCtrl.SetItemState(nItem,LVIS_SELECTED|LVIS_FOCUSED,LVIS_SELECTED|LVIS_FOCUSED);

und um die Markierung zu erhalten
Code:
m_MyListCtrl.ModifyStyle(0,LVS_SHOWSELALWAYS);

Mfg

langer
 
Und um zu Scrollen, kannst du folgenden Code verwenden:
Code:
CSize size;
CRect rect;
m_MyListCtrl.GetItemRect(0,&rect,LVIR_BOUNDS);   //ItemHöhe bestimmen
size.cx=0;
size.cy=rect.Height()*m_ctrListe.GetItemCount();       //oder statt GetCount ItemPosition angeben
m_ctrListe.Scroll(size);

Anmerkung: Das funktioniert, um zum Ende zu Scrollen. Genau genommen muß man aber die Anzahl der Zeilen bestimmen, um die gescrollt werden soll und size.cy mit der Itemhöhe * AnzahlZeilen füllen.

Mfg

langer
 
Zuletzt bearbeitet:
Zurück