当前位置: 代码迷 >> VC >> CFormView中LISTCTRL的标题自绘有关问题
  详细解决方案

CFormView中LISTCTRL的标题自绘有关问题

热度:268   发布时间:2016-05-05 00:09:33.0
CFormView中LISTCTRL的标题自绘问题
我在CMainFrame中有一个LISTVIEW 用来显示各个表的数据,后来发现有的表数据很大,我就实现了虚列表功能(我在单文档中多加了一个视图,这个视图是通过创建了一个CFormView,对话框上放了一个LISTCTRL实现的,用于数据量大时按虚列表显示)。这个已经实现了,我现在发现虚列表中的LISTCTRL很丑,我就想自绘LISTCTRL,我创建了一个继承自CHeaderCtrl的类,我也创建了一个继承自LISTCTRL的类,然后在自己写的LISTCTRL中将自己的CHeaderCtrl类子类化到LISTCTRL中,我在LISTCTRL中只要声明了我自己创建的CHeaderCtrl,就会在执行下面代码时报堆错误。请问这是为什么?
	CView *pOldActiveView=((CFrameWnd*) m_pMainWnd)->GetActiveView();
//IDD_VIRTUALREPORT为自己创建的CFormView对话框

CView *pNewActiveView=(CView*)GetDlgItem(AfxGetMainWnd()->m_hWnd,IDD_VIRTUALREPORT);  

//通过这两行代码可以得到当前的view,并且根据nForm的id值,得到我们的view资源。

pNewActiveView=(CView*)new CVirtualReport();//CVirtualReport为自己创建的一个继承自LISTCTRL的类
CCreateContext context;

context.m_pCurrentDoc=pOldActiveView->GetDocument();

pNewActiveView->Create(NULL,NULL,WS_CHILD | WS_BORDER,CFrameWnd::rectDefault,m_pMainWnd,IDD_VIRTUALREPORT,&context);//此处报错

pNewActiveView->OnInitialUpdate();

------解决方案--------------------
头文件 顺序问题