VC用对话框选择目录:CFolderPickerDialog(VS2008及以后版本)

CFolderPickerDialog

简介

中文翻译为"文件夹拾取对话框".是Visual C++ 2008中新引入的针对文件夹选择对话框设计的类,此类替代了传统的SDK方法,而且具有更好的外观.但是,此类仅适用于vista及以上windows操作系统.

头文件: afxdlgs.h

示例

构造函数:

CFolderPickerDialog( LPCTSTR lpszFolder = NULL, DWORD dwFlags = 0, CWnd* pParentWnd = NULL, DWORD dwSize = 0);

范例:

CFolderPickerDialog fd(NULL,0,this,0);

int ret=fd.DoModal();

if(ret==IDOK)

{

CString des;

des=fd.GetFolderPath();

}

采用Win API实现如下:

BROWSEINFO bi;

char path[MAX_PATH];

char title[] = "Select Directory";

ZeroMemory(&bi,sizeof(bi));

bi.hwndOwner = this->m_hWnd;

bi.pszDisplayName = path;

bi.lpszTitle = title;

bi.ulFlags = 0x0040;

CString dir;

LPITEMIDLIST list = SHBrowseForFolder(&bi);

if(list == NULL)

dir = "";

else

{

SHGetPathFromIDList(list,path);

dir.Format("%s",path);

}

此API版本不仅适用于XP系统,还适用vista以及win7以上系统.但在外观界面有所差异.

时间: 2024-10-28 21:23:53

VC用对话框选择目录:CFolderPickerDialog(VS2008及以后版本)的相关文章

delphi弹出选择对话框选择目录|SelectDirectory 函数(转)

SelectDirectory 函数 通过显示一个对话框来让用户选择一个目录.注意:在使用前要在Uses 语句中添加包含FileCtrl 的说明.函数原型如下:function SelectDirectory(const Caption: string; const Root: WideString;out Directory: string): Boolean; overload;function SelectDirectory(var Directory: string; Options:

C# winform 窗体弹出选择目录或文件 的对话框

//弹出一个选择目录的对话框 privatevoid btnSelectPath_Click(object sender, EventArgs e) //弹出一个选择目录的对话框 { FolderBrowserDialog path = new FolderBrowserDialog(); path.ShowDialog(); this.txtPath.Text = path.SelectedPath; } //弹出一个选择文件的对话框 privatevoid btnSelectFile_Cli

[MFC]选择目录对话框和选择文件对话框

制作选择目录和选择文件对话框,一般用到BROWSEINFO结构,如下: BROWSEINFO结构: HWND hwndOwner,指定对话框的父窗口的句柄 LPCITEMIDLIST pidlRoot,指定打开浏览的根目录,若为NULL,表示桌面 LPSTR pszDisplayName,指定一个缓冲区,接收用户选择的目录的显示名称 LPCSTR lpszTitle,树形视图上方显示的文字 UINT ulFlags,指定属性 BFFCALLBACK Lpfn,指定回调函数,发生某些事件时,指定的

[MFC]选择目录对话框和选择文件对话框 [转]

在MFC编程中经常会需要用到选择目录和选择文件的界面,以下总结一下本人常用的这两种对话框的生成方法: 选择目录对话框 {    char szPath[MAX_PATH];     //存放选择的目录路径     CString str;    ZeroMemory(szPath, sizeof(szPath));       BROWSEINFO bi;       bi.hwndOwner = m_hWnd;       bi.pidlRoot = NULL;       bi.pszDis

VC中文件(夹)目录与路径操作原理与代码实现

***********************************************声明************************************************************************************* 原创作品,出自 "晓风残月xj" 博客,欢迎转载,转载时请务必注明出处(http://blog.csdn.net/xiaofengcanyuexj). 由于各种原因,可能存在诸多不足,欢迎斧正! ************

弹出打开/保存文件对话框 选择文件夹对话框

打开/保存文件对话框: CFileDialog::CFileDialog( BOOL bOpenFileDialog, //为TRUE则显示打开对话框,为FALSE则显示保存对话文件对话框 LPCTSTR lpszDefExt = NULL, //默认的文件扩展名 LPCTSTR lpszFileName = NULL, //默认的文件名 DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, //设定风格 LPCTSTR lpszFilt

C# WinForm 选择目录路径和文件路径

private string SelectPath() //弹出一个选择目录的对话框 { FolderBrowserDialog path = new FolderBrowserDialog(); path.ShowDialog(); return path.SelectedPath; } private string SelectFile() //弹出一个选择文件的对话框 { OpenFileDialog file = new OpenFileDialog(); file.ShowDialog

Winform选择目录路径与选择文件路径

https://blog.csdn.net/zaocha321/article/details/52528279 using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsApplication1 { public par

vc 基于对话框多线程编程实例——线程之间的通信

 vc基于对话框多线程编程实例--线程之间的通信 实例: vc 基于对话框多线程编程实例--线程之间的通信,码迷,mamicode.com