clistctrl数据更新.doc_第1页
clistctrl数据更新.doc_第2页
clistctrl数据更新.doc_第3页
clistctrl数据更新.doc_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

关于CListCtrl控件更新Item的闪烁问题和一次插入大容量数据的显示问题解决办法(转)(2011-10-23 22:08:48)转载标签:杂谈分类:C 学习 1.使用SetRedraw禁止窗口重绘,操作完成后,再恢复窗口重绘m_ctlList.SetRedraw(FALSE);/以下为更新数据操作/恢复窗口重绘m_ctlList.SetRedraw(TRUE);2.使用LockWindowUpdate禁止窗口重绘,操作完成后,用UnlockWindowUpdate恢复窗口重绘m_ctlList.LockWindowUpdate();/以下为更新数据操作/恢复窗口重绘m_ctlList.UnlockWindowUpdate();3.使用ListCtrl的内部双缓冲m_ctlLisit.SetExtendedStyle(m_ctlLisit.GetExtendedStyle()|LVS_EX_DOUBLEBUFFER);VC6未定义LVS_EX_DOUBLEBUFFER宏,使用者可以自定义,如下:#define LVS_EX_DOUBLEBUFFER 0000100004.Virtual List首先要设置ListCtrl风格为LVS_REPORT | LVS_OWNERDATA或在ListCtrl属里中的More Styles页面中选中Owner data复选框。其次要向应LVN_GETDISPINFO消息;void OnGetdispinfoList(NMHDR* pNMHDR, LRESULT* pResult)LV_DISPINFO* pDispInfo = (LV_DISPINFO*)pNMHDR;LV_ITEM *pItem = &(pDispInfo)-item;char szText128 = 0;if (pItem-mask & LVIF_TEXT)/使缓冲区数据与表格子项对应/m_ArrayBuff为二维数组/定义如下 int m_ArrayBuff20484;_stprintf(szText,_T(“%d”),m_ArrayBuffpItem-iItempItem-iSubItem);pItem-pszText = szText;*pResult = 0;最后便是生成缓冲区数据void Insertdata()/删除之前的数据m_ctlList.SetItemCountEx(0);m_ctlList.Invalidate();m_ctlList.UpdateWindow();srand( (unsigned)time( NULL );/生成新的数据缓冲区int nItemCount = 2048;for (int i = 0;i nItemCount; i +)for (int k = 0;k 4;k +)m_ArrayBuffik = rand() 48 + 1;if (nItemCount GetWindowRect(&headerRect);MenDC.CreateCompatibleDC(&dc);MemMap.CreateCompatibleBitmap(&dc,rect.Width(),rect.Height();MenDC.SelectObject(&MemMap);MenDC.FillSolidRect(&rect,RGB(255,255,255); /这里的RGB(255,255,255)是ListCtrl的背景色/这一句是调用默认的OnPaint(),把图形画在内存DC表上DefWindowProc(WM_PAINT,(WPARAM)MenDC.m_hDC,(LPARAM)0);/输出dc.BitBlt(0,headerRect.Height(),rect.Width(), rect.Hei

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论