void CListCtrlEx::DeleteItem(int nItem) { if(nItem >= GetItemCount()) return; CProgressCtrl* pCtrl = m_ProgressList.GetAt(nItem); pCtrl->DestroyWindow(); delete pCtrl; m_ProgressList.RemoveAt(nItem); CListCtrl::DeleteItem(nItem); }
CListCtrlEx::~CListCtrlEx() { int Count = m_ProgressList.GetSize(); for (int i = 0; i < Count; i++) { CProgressCtrl* pCtrl = m_ProgressList.GetAt(0); pCtrl->DestroyWindow(); delete pCtrl; m_ProgressList.RemoveAt(0); } }
CListCtrlEx::~CListCtrlEx() { int Count = (int) m_ProgressList.size(); for(int i = Count - 1; i >= 0; i--) { CProgressCtrl* pControl = m_ProgressList[i]; m_ProgressList.pop_back(); pControl->DestroyWindow(); delete pControl; } }