文件对话框的打开方式

一、利用API函数SHBrowseForFolder
BROWSEINFO的结构如下:
  typedef struct _browseinfo {

  HWND hwndOwner; // 父窗口句柄

  LPCITEMIDLIST pidlRoot; // 要显示的文件夹的根(Root)

  LPTSTR pszDisplayName; // 保存被选取的文件夹路径的缓冲区

  LPCTSTR lpszTitle; // 显示位于对话框左上部的标题

  UINT ulFlags; // 指定对话框的外观和功能的标志

  BFFCALLBACK lpfn; // 处理事件的回调函数

  LPARAM lParam; // 应用程序传给回调函数的参数

  int iImage; // 保存被选取的文件夹的图片索引

  } BROWSEINFO, *PBROWSEINFO, *LPBROWSEINFO;


二、利用API函数GetOpenFileNameGetSaveFileName
OPENFILENAME的结构如下:
      typedef struct tagOFN{

      DWORD lStructSize;

      HWND hwndOwner;

  HINSTANCE hInstance;
  LPCTSTR lpstrFilter;
  LPTSTR lpstrCustomFilter;
  DWORD nMaxCustFilter;
  DWORD nFilterIndex;
  LPTSTR lpstrFile;
  DWORD nMaxFile;
  LPTSTR lpstrFileTitle;
  DWORD nMaxFileTitle;
  LPCTSTR lpstrInitialDir;
  LPCTSTR lpstrTitle;
  DWORD Flags;
  WORD nFileOffset;
  WORD nFileExtension;
  LPCTSTR lpstrDefExt;
  LPARAM lCustData;
  LPOFNHOOKPROC lpfnHook;
  LPCTSTR lpTemplateName;
  #if (_WIN32_WINNT >= 0x0500)
  void * pvReserved;
  DWORD dwReserved;
  DWORD FlagsEx;
  #endif // (_WIN32_WINNT >= 0x0500)
  } OPENFILENAME, *LPOPENFILENAME;
三、利用MFC类 CFileDialog
这个类似乎是封装了 GetOpenFileNameGetSaveFileName.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值