当前位置:编程学习 > VC++ >>

CListView二行数据删除第一行失败?删除第二行内存错误?//什么原因?

HRESULT bResult = S_OK; int iItemIndex; CListCtrl & ListCtrl = GetListCtrl(); iItemIndex = ListCtrl.GetSelectionMark(); if(bResult==ListCtrl.DeleteItem(iItemIndex)) { ................... }
追问:HRESULT bResult = S_OK; 删除成功了
请问if(bResult==ListCtrl.DeleteItem(iItemIndex))为什么不相等啊????Returns S_OK if successful, or an error value otherwise.
删除成功了
HRESULT bResult = S_OK; 
请问if(bResult==ListCtrl.DeleteItem(iItemIndex))为什么不相等啊????
 HRESULT DeleteItem(        
    IShellItem *psiItem,
    IFileOperationProgressSink *pfopsItem//这个参数啥意思?
);啊!怎么可能出现<0的情况啊Returns S_OK if successful, or an error value otherwise.
删除成功了
HRESULT bResult = S_OK; 
请问if(bResult==ListCtrl.DeleteItem(iItemIndex))为什么不相等啊????
 HRESULT DeleteItem(        
    IShellItem *psiItem,
    IFileOperationProgressSink *pfopsItem//这个参数啥意思?
);
答案:if(bResult==ListCtrl.DeleteItem(iItemIndex)) 这句判断有问题
 
应该这样判断
if ((iItemIndex != -1) && ListCtrl.DeleteItem(iItemIndex)) 
{
....
}
其他:有没有检查iItemIndex  < 0 的情况? 

上一个:vc 套接字 struct
下一个:vc调试工具,红点变空心什么原因?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,