Frage zu ListCtrl
-
HI Leute!
Ich hab ein ListCtrl, wo ich mit InsertItem() ein paar Items einfüge.
Nun werden die Items so aufgefüllt, dass das erste Item ganz unten ist und jedes weitere Item über das nächste hinzugefügt wird.Meine Frage: Kann ich die Items so einfügen, dass diese absteigend in das control gesetzt werden? Das erste hinzugefügte Item soll also ganz oben sein, das Letzte ganz unten.
lg enne
-
Wenn Du beim einfügen bei nitem bzw. iItem eine 0 angibst, wird die Zeile ganz oben eingefügt.
Wenn Du sie ganz unten haben willst, dann verwendest Du den Wert n (CListCtrl::GetItemCount())
-
Ach, stimmt, danke vielmals

-
Sry, wenn ich das Thema nochmal aufgreifen muss, aber kannst du mir noch eventuell sagen, wie man eine bestimmte Zeile in einem ListCtrl selektieren bzw. den Cursor setzen kann?
lg enne
-
SetSelectionMark
Zu beachten ist aber - wenn du LVS_EX_LVS_SHOWSELALWAYS nicht gesetzt hast, und das control hat nicht fen focus (SetFocus()) dann wirst du die selektion nicht sehen
entweder das flag LVS_SHOWSELALWAYS setzen, oder nach der selection SetFocus() aufrufen um das problem zu beheben
-
mit CListCtrl::SetItemState, LVIF_STATE und LVIS_SELECTED
http://msdn2.microsoft.com/en-us/library/9t97k8h9(VS.80).aspx
-
Perfekt, vielen Dank euch beiden
