众里寻他千百度,试过别的,不好使,还是喜欢CGridCtrl.
第一:应该做的,是去官网下载源码和Demo,建议将demo下载下来,后面遇到问题是可以有一个参照的解决方法,官网地址是:http://www.codeproject.com/KB/miscctrl/gridctrl.aspx,注册一下就能下载,很方便。
第二:MFCgridctrl 必须要在用到的系统中导入gridctrl文件夹的全部cpp和h文件(方法 project-->add to project -->files),这时候可以在类的试图中看到CGridCtrl CCellID等等一些类。
第三:,如果直接将源文件添加进来的话,会编译错误,内容大概是CMemDC这个类重定义了,去网上搜了一下,大概是最初写这个类时,微软貌似没有这个类,后类微软自己写了这么一个类,所以导致重复定义,方法是将这个类改一个名字就好了,注意将引用这个类的地方也要改掉。
第四:我在文档视结构的项目中,在鼠标单击时,画了个表格,代码如下:
#include ".\GridCtrl_src\GridCtrl.h"
void CMFCApplication8View::OnLButtonDown(UINT nFlags, CPoint point)
{
CGridCtrl *mGrid=new CGridCtrl(1,2,3,4);
CRect rect;
AfxGetApp()->m_pMainWnd->GetClientRect(&rect);
mGrid->Create(rect,this,1,WS_CHILD | WS_BORDER | WS_TABSTOP | WS_VISIBLE);
}
好使了!