report模式的list control 能显示存在于硬盘的不同照片吗? 我找到些代码只是能显示一张,一改变就整列都变了?能保持显示不同的照片吗?static int flag=2;
if(flag==2){ m_ImageList.Create(60, 80, ILC_COLORDDB|ILC_MASK, 20, 1); m_list1.SetImageList(&m_ImageList,LVSIL_SMALL);
}
flag=(flag+1)%2;
CBitmap* bitmap;
bitmap=new CBitmap[1000];
HBITMAP hbitmap;
CString photoName2;
photoName2.Format(_T(".\\fea2\\%s.bmp"),photoName);
//为每一行插入相应的缩略图
CFile f;
CFileException e;
if( !f.Open(photoName, CFile::modeRead, &e ))
{ //m_FileName为bmp文件名,由你来定
hbitmap = (HBITMAP)LoadImage(NULL,photoName2,IMAGE_BITMAP,60,80,
LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);
}else{
f.Close();
hbitmap = (HBITMAP)LoadImage(NULL,photoName2,IMAGE_BITMAP,0,0,
LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);
} for(int kk=0;kk<m_ImageList.GetImageCount();kk++)
{m_ImageList.Remove(kk);} bitmap[listshow].Attach(hbitmap);
m_ImageList.Add(&bitmap[listshow], RGB(0, 128, 128));
int j=0;
m_list1.InsertItem(0,str1);
m_list1.SetItemText(0,j+1,str2);
m_list1.SetItemText(0,j+2,str3);
m_list1.SetItemText(0,j+3,str4);
m_list1.SetItemText(0,j+4,str5);
m_list1.SetItemText(0,j+5,str6);
m_list1.SetItemText(0,j+6,str7);
m_list1.SetItemText(0,j+7,str8);
m_list1.SetItemText(0,j+8,str9);
if(flag==2){ m_ImageList.Create(60, 80, ILC_COLORDDB|ILC_MASK, 20, 1); m_list1.SetImageList(&m_ImageList,LVSIL_SMALL);
}
flag=(flag+1)%2;
CBitmap* bitmap;
bitmap=new CBitmap[1000];
HBITMAP hbitmap;
CString photoName2;
photoName2.Format(_T(".\\fea2\\%s.bmp"),photoName);
//为每一行插入相应的缩略图
CFile f;
CFileException e;
if( !f.Open(photoName, CFile::modeRead, &e ))
{ //m_FileName为bmp文件名,由你来定
hbitmap = (HBITMAP)LoadImage(NULL,photoName2,IMAGE_BITMAP,60,80,
LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);
}else{
f.Close();
hbitmap = (HBITMAP)LoadImage(NULL,photoName2,IMAGE_BITMAP,0,0,
LR_CREATEDIBSECTION|LR_DEFAULTSIZE|LR_LOADFROMFILE);
} for(int kk=0;kk<m_ImageList.GetImageCount();kk++)
{m_ImageList.Remove(kk);} bitmap[listshow].Attach(hbitmap);
m_ImageList.Add(&bitmap[listshow], RGB(0, 128, 128));
int j=0;
m_list1.InsertItem(0,str1);
m_list1.SetItemText(0,j+1,str2);
m_list1.SetItemText(0,j+2,str3);
m_list1.SetItemText(0,j+3,str4);
m_list1.SetItemText(0,j+4,str5);
m_list1.SetItemText(0,j+5,str6);
m_list1.SetItemText(0,j+6,str7);
m_list1.SetItemText(0,j+7,str8);
m_list1.SetItemText(0,j+8,str9);
解决方案 »
- ICClose(m_Com.hic)关闭压缩句柄有的时候会出错
- 动态库中使用ADO和一般应用程序使用ADO有什么需要注意的事情
- 为工具栏按钮添加下拉箭头
- 100分求助getResponseHeader()问题
- 如何用SetLayeredWindowAttributes透明指定的颜色
- 大家有知道Maxthon的Tab是怎么实现的吗??
- ODBC+ACCESS2002会不会出问题
- 一段检查内存泄露的源码
- 请教几个问题!
- 请教USB设备驱动开发中的一个问题
- 安装VS2008 SP1后, 终于丢弃VC6了, 问IDE的3个使用问题!
- 单文档程序,按下键盘的Num Lock键,程序右下角的状态栏里会出现“数字"字符,怎么去掉?
搞定了 谢谢你的提醒。
添加这个就可以了LVITEM lvitem; lvitem.mask=LVIF_IMAGE|LVIF_TEXT;
lvitem.iItem=0;
lvitem.pszText=""; lvitem.iImage=listshow;
lvitem.iSubItem=0;
listshow++ m_list1.InsertItem(&lvitem);