BOOL DeleteColumn( int nCol );int InsertColumn( int nCol, const LVCOLUMN* pColumn );int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 );
我知道你的意思。、 1、BOOL DeleteColumn( int nCol );在删除列的时候最好使用 int nColumnCount = pmyListCtrl->GetHeaderCtrl()->GetItemCount(); // Delete all of the columns. for (int i=0;i < nColumnCount;i++) { pmyListCtrl->DeleteColumn(0); } 不然删除很有可能会出错。 2、int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 ); 也是一样的,如果你已经插入过此列。则回顺序往后推的。并非自己所要的列。综上:1、定义数据列表。缓存数据 2、每次做插入的之前删除所有数据。在列表内操作之后在顺序插入。 3、每次删除的时候同样是对列表操作。之后在顺序插入。愚笨之法,仅做参考!
DeleteAllItems(); InsertColumnint nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 ); InsertItem(i,strSN,j); SetItemText(i,j,strStatoin); 自己试试吧!
添加以后
Invalidate();看看
1、BOOL DeleteColumn( int nCol );在删除列的时候最好使用
int nColumnCount = pmyListCtrl->GetHeaderCtrl()->GetItemCount();
// Delete all of the columns.
for (int i=0;i < nColumnCount;i++)
{
pmyListCtrl->DeleteColumn(0);
}
不然删除很有可能会出错。
2、int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 );
也是一样的,如果你已经插入过此列。则回顺序往后推的。并非自己所要的列。综上:1、定义数据列表。缓存数据
2、每次做插入的之前删除所有数据。在列表内操作之后在顺序插入。
3、每次删除的时候同样是对列表操作。之后在顺序插入。愚笨之法,仅做参考!
InsertColumnint nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 );
InsertItem(i,strSN,j);
SetItemText(i,j,strStatoin);
自己试试吧!