列和行的结构体属性:
typedef struct _LVCOLUMN {UINT mask; //说明此结构中哪些成员是有效的int fmt; //列的对齐方式int cx; //列的初始宽度LPTSTR pszText; //列的标题int cchTextMax; //pszText所指向的缓冲区的大小int iSubItem; //与列关联的子项的索引值,从0开始int iImage; //与列关联的图像列表中指定图像的索引值int iOrder; //第几列,0代表最左一列} LVCOLUMN, FAR *LPLVCOLUMN;typedef struct _LVITEM {UINT mask; //说明LVITEM结构中哪些成员有效int iItem; //项目的索引值(可以视为行号)从0开始int iSubItem; //子项的索引值(可以视为列号)从0开始UINT state; //子项的状态UINT stateMask; //状态有效的屏蔽位LPTSTR pszText; //主项或子项的名称int cchTextMax; //pszText所指向的缓冲区大小int iImage; //关联图像列表中指定图像的索引值LPARAM lParam; //程序定义的32位参数int iIndent; //表示图像位置缩进的单位} LVITEM, FAR *LPLVITEM;
列子:
m_imageList.Create(25,25,ILC_COLOR,10,1);//参数依次为图象宽度,高度,图象列表的类别,图象数量,可控制的图象数量 HICON hi1; hi1=(HICON)::LoadImage(AfxGetInstanceHandle(),"D://animal.ico",IMAGE_ICON, 0, 0, LR_LOADFROMFILE);//参看
//我的另一篇博文 m_imageList.Add(hi1); m_list.SetImageList(&m_imageList,LVSIL_SMALL);//LVSIL_SMALL表示图象列表的类型,此处为小图标,
LVSIL_NORMAL大图标,LVSIL_STATE state images,不知道什么意思。
LVCOLUMN lvcolumn; lvcolumn.mask = LVCF_FMT | LVCF_TEXT | LVCF_WIDTH; lvcolumn.fmt = LVCFMT_CENTER; lvcolumn.cx = 80; lvcolumn.pszText = "image"; lvcolumn.iSubItem = 0; m_list.InsertColumn(0, &lvcolumn); LVITEM lvitem; lvitem.mask = LVIF_IMAGE|LVIF_TEXT; lvitem.iItem = 0; lvitem.pszText = "123"; lvitem.iImage = 0; lvitem.iSubItem = 0; m_list.InsertItem(&lvitem);