用MFC实现简单资源管理器(4)

2019-02-15 21:54

void CDriveExplorerView::OnInitialUpdate() {

CListView::OnInitialUpdate();

CDriveExplorerDoc* pDoc = GetDocument(); pDoc->m_ExplorerView = this; CRect rect;

GetClientRect(&rect);

GetListCtrl().InsertColumn(0, \ GetListCtrl().InsertColumn(1, \ GetListCtrl().InsertColumn(2, \ m_pImageList = new CImageList(); m_pImageListL = new CImageList(); SetupImages(m_pImageList, 16);

SetupImages(m_pImageListL, 32);

GetListCtrl().SetImageList(m_pImageList, LVSIL_SMALL); GetListCtrl().SetImageList(m_pImageListL, LVSIL_NORMAL); }

#ifdef _DEBUG

void CDriveExplorerView::AssertValid() const {

CListView::AssertValid(); }

void CDriveExplorerView::Dump(CDumpContext& dc) const {

CListView::Dump(dc); }

CDriveExplorerDoc* CDriveExplorerView::GetDocument() // non-debug version is inline {

ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CDriveExplorerDoc))); return (CDriveExplorerDoc*)m_pDocument; }

#endif //_DEBUG

void CDriveExplorerView::OnStyleChanged(int nStyleType, LPSTYLESTRUCT lpStyleStruct) {

//TODO: add code to react to the user changing the view style of your window }

void CDriveExplorerView::DeleteAllItems() {

GetListCtrl().DeleteAllItems();

}

void CDriveExplorerView::AddToListView(WIN32_FIND_DATA *fd) {

LV_ITEM lvitem; char sNumBuff[100]; int iActualItem; CString sText;

lvitem.mask = LVIF_TEXT | LVIF_IMAGE; lvitem.iItem = 0; lvitem.iSubItem = 0;

lvitem.pszText = GetNTS(fd->cFileName); // fd.cFileName;

lvitem.iImage = GetListViewIcon(fd->cFileName); //SetFileIcon(fd->GetFileName()); iActualItem = GetListCtrl().InsertItem(&lvitem); // Add Attribute column lvitem.mask = LVIF_TEXT; lvitem.iItem = iActualItem; lvitem.iSubItem = 1;

lvitem.pszText = GetNTS(GetFileType(fd->cFileName)); GetListCtrl().SetItem(&lvitem);

// Add Size column

if(fd->nFileSizeLow != 0)

ltoa((long)fd->nFileSizeLow,sNumBuff,10); else

strcpy(sNumBuff,\ lvitem.mask = LVIF_TEXT; lvitem.iItem = iActualItem; lvitem.iSubItem = 2;

lvitem.pszText = sNumBuff; GetListCtrl().SetItem(&lvitem); // Add Time column

CTime refTime;

refTime = fd->ftCreationTime; sText = refTime.Format( \ lvitem.mask = LVIF_TEXT; lvitem.iItem = iActualItem;

lvitem.iSubItem = 3;

lvitem.pszText = sText.GetBuffer(sText.GetLength()); GetListCtrl().SetItem(&lvitem); }

LPTSTR CDriveExplorerView::GetNTS(CString cString) {

LPTSTR lpsz = new TCHAR[cString.GetLength()+1]; _tcscpy(lpsz, cString); return lpsz; }

CString CDriveExplorerView::GetFileType(CString s) {

CString cResult;

int nFoundAt = s.Find(\ s.MakeUpper(); if(nFoundAt == 0) return s + \

CString ext = s.Mid(nFoundAt); if(ext == \ if(ext == \ if(ext == \

if(ext == \

else if(s == \.EXE\

else if(s == \

else if(ext == \

else if(ext == \== \ return \

else if(ext == \ return \

else if(ext == \ return \

else if(ext == \ else if(ext == \

else if(ext == \ return ICI_VIDEOFILE;

else if(ext == \ else if(ext == \ else if(ext == \

else if(ext == \ return \

else if(ext == \ ext == \ ext == \

return \

else if(ext == \ ext == \ ext == \ ext == \

ext == \

ext == \ return \

else if(ext == \

ext == \

return \

else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else {

ext = ext.Mid( (ext.Find(’.’,0) != -1 ? 1 : 0)); return ext + \ }

return cResult; }

UINT CDriveExplorerView::GetListViewIcon(CString s) {

int nFoundAt = s.Find(\ s.MakeUpper(); if(nFoundAt == 0)

return ICI_GENERALFILE; CString ext = s.Mid(nFoundAt); // Set some standard icon types

if(ext == \

else if(s == \.EXE\

else if(s == \ else if(ext == \ else if(ext == \ ext == \ ext == \

return ICI_ZIPFILE;

else if(ext == \ return ICI_EXEFILE;

else if(ext == \ return ICI_SOUNDFILE;

else if(ext == \

else if(ext == \

else if(ext == \ return ICI_VIDEOFILE;

else if(ext == \

else if(ext == \ else if(ext == \

else if(ext == \ return ICI_FOXPROFILE;

else if(ext == \ ext == \ return ICI_DRIVERSFILE;

else if(ext == \ ext == \ ext == \ ext == \ ext == \ ext == \ return ICI_IMAGEFILE;

else if(ext == \

ext == \

return ICI_WINDOWSFILE;

else if(ext == \else if(ext == \else if(ext == \

else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else if(ext == \ else

return ICI_GENERALFILE; }

void CDriveExplorerView::SetupImages(CImageList* mImageList, int iSize) {

CWinApp* pApp = AfxGetApp();

// ASSERT(m_pImageList != NULL); // serious allocation failure checking mImageList->Create(iSize, iSize, ILC_COLOR8 | ILC_MASK, 9, 9); mImageList->Add(pApp->LoadIcon(ICO_ACCESSFILE)); mImageList->Add(pApp->LoadIcon(ICO_C_SOURCE)); mImageList->Add(pApp->LoadIcon(ICO_CDDRV));


用MFC实现简单资源管理器(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:城市道路交通管理规划方法与应用研究三

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: