Не заполняются колонки в ListView

Тема в разделе "WASM.BEGINNERS", создана пользователем xchg, 14 окт 2006.

  1. xchg

    xchg New Member

    Публикаций:
    0
    Регистрация:
    10 апр 2006
    Сообщения:
    34
    Адрес:
    Russia
    заполняется только первая колонка. Вторая и третья остаются пустыми. Вроде все проверил. не знаю уже в чем дело
    (
    Код (Text):
    1. INVOKE     CreateWindowEx, 0, addr ListViewClass, NULL,\
    2.                  WS_CHILD or WS_VISIBLE or LVS_REPORT or LVS_SHAREIMAGELISTS,\
    3.                  0, 50, 415, 210, hWnd, NULL, hInst, NULL
    4.          mov     hList, eax
    5.          
    6.          mov     eax, LVS_EX_FULLROWSELECT or LVS_EX_HEADERDRAGDROP or\
    7.                       LVS_EX_SUBITEMIMAGES or LVS_EX_GRIDLINES
    8.       INVOKE     SendMessage, hList, LVM_SETEXTENDEDLISTVIEWSTYLE, 0, eax
    9.       ;--------создаем колонки---------
    10.          mov     lvc.imask, LVCF_TEXT or LVCF_WIDTH ;or LVCF_SUBITEM
    11.          mov     lvc.pszText, offset szColName
    12.          mov     lvc.lx, 150
    13.       INVOKE     SendMessage, hList, LVM_INSERTCOLUMN, 0, addr lvc  ;первая
    14.           or     lvc.imask, LVCF_FMT
    15.          mov     lvc.fmt, LVCFMT_LEFT
    16.          mov     lvc.pszText, offset szColSize
    17.          mov     lvc.lx, 150
    18.       INVOKE     SendMessage, hList, LVM_INSERTCOLUMN, 1, addr lvc      ;вторая
    19.            mov     lvc.fmt, LVCFMT_LEFT
    20.          mov     lvc.pszText, offset szColDate
    21.          mov     lvc.lx, 135
    22.       INVOKE     SendMessage, hList, LVM_INSERTCOLUMN, 2, addr lvc  ;третья
    23.                 ...
    24.       cikl:
    25.     ...
    26.             записываем данные в buffer и buffer2,countString-номер ряда
    27.     ...
    28.     invoke LoadListView,ADDR buffer ,ADDR buffer2,ADDR countString
    29.     inc countString
    30.     jmp cikl
    31.  
    32. ;============================================================================= 
    33. LoadListView proc  szName:DWORD,szPhone:DWORD,NumberString:DWORD
    34. LOCAL    lvi:LV_ITEM
    35.  
    36. mov     lvi.imask, LVIF_TEXT or LVIF_PARAM ;or LVIF_IMAGE
    37. push NumberString
    38. pop lvi.iItem
    39. mov     lvi.iSubItem,0
    40. mov eax,szName
    41. mov     lvi.pszText, eax
    42. push NumberString
    43. pop lvi.lParam
    44. INVOKE     SendMessage, hList, LVM_INSERTITEM,0, addr lvi   ;заполняем первую
    45.  
    46. mov lvi.imask,LVIF_TEXT
    47. inc lvi.iSubItem
    48. mov edx,szPhone
    49. mov lvi.pszText,edx
    50. ;INVOKE     MessageBox, NULL, edx, addr AppName, MB_OK
    51. INVOKE     SendMessage, hList, LVM_SETITEM, 0, addr lvi     ;вторую
    52.  
    53.  
    54. inc lvi.iSubItem
    55. mov edx,NumberString
    56. mov lvi.pszText,edx
    57. ;INVOKE     MessageBox, NULL, edx, addr AppName, MB_OK
    58. INVOKE     SendMessage, hList, LVM_SETITEM, 1, addr lvi     ;третью
    59. ret
    60. LoadListView endp
    61. ;==============================================================================
     
  2. IceStudent

    IceStudent Active Member

    Публикаций:
    0
    Регистрация:
    2 окт 2003
    Сообщения:
    4.300
    Адрес:
    Ukraine
    зря закомментировал. Там нужно выставлять iSubItem.
     
  3. xchg

    xchg New Member

    Публикаций:
    0
    Регистрация:
    10 апр 2006
    Сообщения:
    34
    Адрес:
    Russia
    спасибо))