C++_C++选择文件夹代码的封装,本文实例讲述了C++选择文件夹
if (dir.DoBrowse(hwndDlg, "title"))
{
DirDialog.h头文件代码如下:
{::MessageBoxA(hwndDlg, dir.GetPath(), "", MB_OK);
#define __DIRDIALOG_H_HH } BOOL DoBrowse(HWND hwndOwner, LPTSTR pszDisplayName);
::SHGetPathFromIDListA(pItem, m_szPath);
DirDialog.cpp源文件代码如下:
PIDLIST_ABSOLUTE pItem = ::SHBrowseForFolderA(&m_bi);m_bi.lpszTitle = "请选择文件夹";
使用时的代码如下:
LPCTSTR GetPath(){return m_szPath;};} m_bi.hwndOwner = hwndOwner;
CDirDialog dir;
memset(m_szDisplayName, 0, MAX_PATH);
//显示对话框
};
m_bi.ulFlags = BIF_RETURNONLYFSDIRS ;
m_bi.pidlRoot = NULL;
#include "DirDialog.h"
复制代码 代码如下:
复制代码 代码如下:
memset(m_szPath, 0, MAX_PATH);
#pragma once
#include <Shlobj.h>
m_bi.lParam = NULL;char m_szDisplayName[MAX_PATH]; //显示名称
public:
m_bi.iImage = NULL;
~CDirDialog(void);
该实例分为DirDialog.h头文件与DirDialog.cpp源文件。
m_bi.lpszTitle = pszTitle;CDirDialog::CDirDialog(void)
m_bi.lpfn = NULL;
CDirDialog::~CDirDialog(void)
::ZeroMemory((void*)&m_bi, sizeof(BROWSEINFO));
#endif
复制代码 代码如下:
}
{
protected:
char m_szPath[MAX_PATH]; //选择的目录
BOOL CDirDialog::DoBrowse(HWND hwndOwner, LPTSTR pszTitle)
class CDirDialog
{
CDirDialog(void);
return FALSE;
if (pItem != NULL)
m_bi.hwndOwner = NULL;
BROWSEINFO m_bi;
{
}
return TRUE;
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/jiaob/cjj/6117.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
只需要在调用Ctrl+B编译后
时间:2021-01-13
-
OpenGL超级宝典visual studio
时间:2021-01-04
-
Directx11 教程(2) 基本的wi
时间:2021-01-04
-
LeetCode11ContainerWithMostWate
时间:2021-01-04
-
C语言简单IT之家速成
时间:2020-12-27
-
三分钟了解Activity工作流
时间:2020-12-27
-
编译器是如何实现32位整型
时间:2020-12-27
-
C++中lower_bound函数和upper
时间:2020-12-27
热门文章
-
LeetCode11ContainerWithMostWater(最大水容器)
时间:2021-01-04
-
C语言简单编程速成
时间:2020-12-23
-
都2020了,这五个最佳C++的IDE你还没用过?
时间:2020-12-23
-
C语言源程序文件的后缀是什么?
时间:2020-12-23
-
OpenGL超级宝典visual studio 2013开发环境配置
时间:2021-01-04
-
编译器是如何实现32位整型的常量整数除
时间:2020-12-27
-
libusbwin32学习笔记(二)
时间:2020-12-27
-
C语言简单IT之家速成
时间:2020-12-27
-
C语言和Python语言有什么区别呢?
时间:2020-12-24
-
C++对象模型之RTTI的实现原理
时间:2020-12-23
