webForumDet fria alternativet

List View control

C/C++

9 svar · 220 visningar · startad av Reza

Medlem sedan feb. 2001107 inlägg
Frågan#1

Jag vill kunna markera en Item i en List View control, men jag får inte det att fungera.

När användaren väljer en Item lagrar jag index värdet på denna Item, När jag sen behöver uppdatera Listen vill jag kunna markera den senast valda Itemet.
Jag har använt LVM_SETITEMSTATE, ListView_SetSelectionMark utan resultat.

Hur gör man??

Medlem sedan juni 20022 599 inlägg
#2

"LVM_SETITEMSTATE" ska funka om du skickar med "LVIS_SELECTED || LVIS_FOCUSED".

http://www.developersdex.com/gurus/code/318.asp

(Kolla funktionen SelectListItem mitt på sidan. VB iofs men ..)

Medlem sedan feb. 2001107 inlägg
#3

Jag har även testat detta, men det fungerar inte. :q

Medlem sedan juni 20022 599 inlägg
#4

På vilket sätt funkar det inte? Det är inget med att det markerade itemet ligger utanför den synliga "ytan"?

Har du tittat på LVM_ENSUREVISIBLE?

Medlem sedan feb. 20002 300 inlägg
#5

Har du testat med exakt det här som niko skrev?

LVIS_SELECTED || LVIS_FOCUSED

Tänkte mest på att det kanske borde vara...

LVIS_SELECTED | LVIS_FOCUSED

...istället... :)

Medlem sedan juni 20022 599 inlägg
#6

Phorpher >>
Kan ligga lite i det. Som VB-programmerare med huvudinriktning mot ctr-c/v så blir det lätt fel så fort man försöker porta manuellt. Tack. :)

Medlem sedan feb. 2001107 inlägg
#7

Jag förstod vad du menade niko, det skulle ju vara ”|”.
:birp

Itemet markeras inte och den ligger inte utanför den synliga ytan.
När jag senare, efter att jag har satt status, kontrollerar itemets status är den inte heller satt.
Jag har fyllt i mask och allt.
Den vägrar helt enkelt att markeras.

Medlem sedan feb. 2001107 inlägg
#8

Ok jag har löst det.
Stylen LVS_SHOWSELALWAYS skulle också vara med.

Jag hade ingen aning om det.

Medlem sedan juni 20022 599 inlägg
#9

Jag hade ingen aning om det.

:)

Inte jag heller. Fast "egentligen" funkar det redan utan. Det är bara det att du isåf direkt efter anropet måste flytta fokus till listvyn för att du ska se markeringen.

Medlem sedan feb. 2001107 inlägg
#10

Helt rätt!!
:)

260 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)