Listviews & setIndex again

new topic     » topic index » view thread      » older message » newer message

Hello All,
Below is how I have always set index in a listview which works fine 
until I click on a column header and re sort the LV.

Any Ideas Anyone
Thanks
Tony Steward

for i = 1 to getLVCount(myLV) do
  tempText = upper(getLVItemText(myLV, i, 1))
  if match(SearchText, tempText) then
     setLVIndex(myLV, i)
     exit
  end if
end for

global procedure setLVIndex( integer id, object sel )
    integer iItem
    atom lvitem, VOID
    if atom(sel) then
        sel = {sel}
    end if
    lvitem = struct_LVITEM( LVIF_STATE, 0, 0, LVIS_SELECTED, 
LVIS_SELECTED,0,0,0)
    for i = length( sel ) to 1 by -1 do
        iItem = getLViItemFromlParam( id, sel[i] )
	store( lvitem, LVITEM_iItem, iItem )
	VOID = sendMessage( id, LVM_SETITEMSTATE, iItem, lvitem )
    end for
	VOID = sendMessage( id, LVM_ENSUREVISIBLE, iItem, 0 )
end procedure

new topic     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu