资源简介

实例说明了IFileDialog的使用,以及自定义打开文件对话框,监听打开文件对话框事件等等,vs2010 win7下编写。该代码是我博文的代码,下载前可阅读博文了解情况

资源截图

代码片段和文件信息

// FileDialogEvent.cpp : 实现文件
//

#include “stdafx.h“
#include “IFD.h“
#include “FileDialogEvent.h“


// CFileDialogEvent

CFileDialogEvent::CFileDialogEvent()
{
this->m_Ref=1;
}

CFileDialogEvent::~CFileDialogEvent()
{
}

// 接口方法及成员函数的实现
HRESULT CFileDialogEvent::QueryInterface(REFIID iid void**ppobject)
{
if(ppobject==NULL)
return E_INVALIDARG;
 static const QITAB qit[] = {
            QITABENT(CFileDialogEvent IFileDialogEvents)
            QITABENT(CFileDialogEvent IFileDialogControlEvents)
            { 0 }
        };
        return QISearch(this qit iid ppobject);
}
ULONG CFileDialogEvent::AddRef()
{
return InterlockedIncrement(&m_Ref);
}
ULONG  CFileDialogEvent::Release()
{
 long cRef = InterlockedDecrement(&m_Ref);
        if (!cRef)
            delete this;
        return cRef;
}

//////////////////////////////////////////IFileDialogEvents接口的方法
HRESULT CFileDialogEvent::OnFileOk(IFileDialog *pfd)
{
return S_OK;
}
HRESULT CFileDialogEvent::OnFolderChange(IFileDialog *pfd)
{
return  S_OK;
}
HRESULT CFileDialogEvent::OnFolderChanging(IFileDialog *pfdIShellItem *psiFolder)
{
return  S_OK;
}
HRESULT CFileDialogEvent::OnOverwrite(IFileDialog *fdIShellItem *siFDE_OVERWRITE_RESPONSE *fde)
{
return  S_OK;
}
HRESULT CFileDialogEvent::onselectionchange(IFileDialog *pfd)
{
return  S_OK;
}
HRESULT CFileDialogEvent::OnShareViolation(IFileDialog *pfdIShellItem *psiFDE_SHAREVIOLATION_RESPONSE *pResponse)
{
return  S_OK;
}
HRESULT CFileDialogEvent::OnTypeChange(IFileDialog *pfd)
{
return  S_OK;
}
////////////////////////////IFileDialogControlEvents 接口方法
HRESULT CFileDialogEvent::OnButtonclicked(IFileDialogCustomize *pfdcDWORD dwIDCtl)
{
if(dwIDCtl==1)
{
AfxMessageBox(L“我是收割者A“);
}
else if(dwIDCtl==2)
{
AfxMessageBox(L“我是收割者B“);
}
return S_OK;
}
HRESULT CFileDialogEvent::OnCheckButtonToggled(IFileDialogCustomize *pfdcDWORD dwIDCtlBOOL bChecked)
{
return E_NOTIMPL;
}
HRESULT CFileDialogEvent::OnControlActivating(IFileDialogCustomize *pfdcDWORD dwIDCtl)
{
return E_NOTIMPL;
}
HRESULT CFileDialogEvent::OnItemSelected(IFileDialogCustomize *pfdcDWORD dwIDCtl DWORD dwIDItem)
{
return E_NOTIMPL;
}

///////////////////建立对象
HRESULT CFileDialogEvent::CreateInstance(REFIID iidvoid**ppobject)
{
if(ppobject==NULL)
{
return E_POINTER;
}
CFileDialogEvent *fdf=new (std::nothrow)CFileDialogEvent;
if(fdf==NULL)
{
return E_FAIL;
}
fdf->QueryInterface(iidppobject);
fdf->Release();
return S_OK;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       2624  2014-03-27 22:14  IFD\IFD\FileDialogEvent.cpp

     文件       1441  2014-03-27 22:06  IFD\IFD\FileDialogEvent.h

     文件     104912  2014-03-28 20:30  IFD\IFD\IFD.APS

     文件       1954  2014-03-27 16:11  IFD\IFD\IFD.cpp

     文件        424  2014-03-27 16:11  IFD\IFD\IFD.h

     文件       8658  2014-03-28 20:30  IFD\IFD\IFD.rc

     文件       5979  2014-03-27 16:54  IFD\IFD\IFD.vcxproj

     文件       2156  2014-03-27 16:54  IFD\IFD\IFD.vcxproj.filters

     文件        143  2014-03-27 16:11  IFD\IFD\IFD.vcxproj.user

     文件       8416  2014-03-28 20:37  IFD\IFD\IFDDlg.cpp

     文件        652  2014-03-28 20:30  IFD\IFD\IFDDlg.h

     文件       2937  2014-03-27 16:11  IFD\IFD\ReadMe.txt

    .......     67777  2009-08-31 02:31  IFD\IFD\res\IFD.ico

     文件        662  2014-03-27 16:11  IFD\IFD\res\IFD.rc2

     文件       1260  2014-03-28 20:30  IFD\IFD\resource.h

     文件        136  2014-03-27 16:11  IFD\IFD\stdafx.cpp

     文件       1650  2014-03-27 16:54  IFD\IFD\stdafx.h

     文件        234  2014-03-27 16:11  IFD\IFD\targetver.h

     文件        876  2014-03-27 16:11  IFD\IFD.sln

    ..A..H.     15360  2014-03-28 20:43  IFD\IFD.suo

     目录          0  2014-03-27 16:11  IFD\IFD\res

     目录          0  2014-03-28 20:25  IFD\ipch\ifd-d8af53ee

     目录          0  2014-03-28 20:43  IFD\IFD

     目录          0  2014-03-28 20:25  IFD\ipch

     目录          0  2014-03-28 20:43  IFD

     文件   63524864  2014-03-28 20:43  IFD\IFD.sdf

----------- ---------  ---------- -----  ----

             63753115                    26


评论

共有 条评论