最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++選擇文件夾代碼的封裝

 更新時(shí)間:2014年10月13日 16:30:08   投稿:shichen2014  
這篇文章主要介紹了C++選擇文件夾代碼的封裝,實(shí)例展示了將選擇文件夾功能代碼封裝為一個(gè)類并對(duì)其進(jìn)行實(shí)例化調(diào)用的過(guò)程,對(duì)于學(xué)習(xí)C++程序設(shè)計(jì)有不錯(cuò)的參考價(jià)值,需要的朋友可以參考下

本文實(shí)例講述了C++選擇文件夾代碼的封裝,分享給大家供大家參考。具體方法如下:

該實(shí)例分為DirDialog.h頭文件與DirDialog.cpp源文件。

DirDialog.h頭文件代碼如下:

復(fù)制代碼 代碼如下:
#pragma once 
#ifndef __DIRDIALOG_H_HH 
#define __DIRDIALOG_H_HH 

#include <Shlobj.h>  

class CDirDialog 

protected: 
    BROWSEINFO m_bi; 
    char m_szDisplayName[MAX_PATH]; //顯示名稱 
    char m_szPath[MAX_PATH]; //選擇的目錄 
 
public: 
    //顯示對(duì)話框 
    BOOL DoBrowse(HWND hwndOwner, LPTSTR pszDisplayName); 
 
    LPCTSTR GetPath(){return m_szPath;}; 
 
    CDirDialog(void); 
    ~CDirDialog(void); 
}; 
 
#endif

DirDialog.cpp源文件代碼如下:

復(fù)制代碼 代碼如下:
#include "DirDialog.h" 

CDirDialog::CDirDialog(void) 

    ::ZeroMemory((void*)&m_bi, sizeof(BROWSEINFO)); 
    memset(m_szDisplayName, 0, MAX_PATH); 
    memset(m_szPath, 0, MAX_PATH); 
    m_bi.hwndOwner = NULL; 
    m_bi.pidlRoot = NULL; 
    m_bi.lpszTitle = "請(qǐng)選擇文件夾"; 
    m_bi.ulFlags = BIF_RETURNONLYFSDIRS ; 
    m_bi.lpfn = NULL; 
    m_bi.lParam = NULL; 
    m_bi.iImage = NULL; 

 
BOOL CDirDialog::DoBrowse(HWND hwndOwner, LPTSTR pszTitle) 

    m_bi.hwndOwner = hwndOwner; 
    m_bi.lpszTitle = pszTitle; 
    PIDLIST_ABSOLUTE pItem = ::SHBrowseForFolderA(&m_bi); 
    if (pItem != NULL) 
    { 
        ::SHGetPathFromIDListA(pItem, m_szPath); 
        return TRUE; 
    } 
     
    return FALSE; 

 
CDirDialog::~CDirDialog(void) 

}

使用時(shí)的代碼如下:

復(fù)制代碼 代碼如下:
CDirDialog dir; 
if (dir.DoBrowse(hwndDlg, "title")) 

 ::MessageBoxA(hwndDlg, dir.GetPath(), "", MB_OK); 
}

希望本文所述對(duì)大家的C++程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • C++解析特殊符號(hào)tab、換行符號(hào)實(shí)例代碼

    C++解析特殊符號(hào)tab、換行符號(hào)實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于C++解析特殊符號(hào)tab、換行符號(hào)的相關(guān)資料,這個(gè)功能在我們?nèi)粘i_(kāi)發(fā)中經(jīng)常會(huì)遇到,需要的朋友可以參考下
    2021-05-05
  • C語(yǔ)言實(shí)現(xiàn)貪吃蛇小游戲開(kāi)發(fā)

    C語(yǔ)言實(shí)現(xiàn)貪吃蛇小游戲開(kāi)發(fā)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)貪吃蛇小游戲開(kāi)發(fā),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • 解決VC++編譯報(bào)錯(cuò)error C2248的方案

    解決VC++編譯報(bào)錯(cuò)error C2248的方案

    這篇文章主要介紹了解決VC++編譯報(bào)錯(cuò)error C2248的方案的相關(guān)資料,需要的朋友可以參考下
    2015-11-11
  • 解析C/C++中如何終止線程的運(yùn)行

    解析C/C++中如何終止線程的運(yùn)行

    本篇文章是對(duì)C/C++中如何終止線程運(yùn)行的方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • C/C++中二進(jìn)制文件&順序讀寫詳解及其作用介紹

    C/C++中二進(jìn)制文件&順序讀寫詳解及其作用介紹

    這篇文章主要介紹了C/C++中二進(jìn)制文件&順序讀寫詳解及其作用,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • 枚舉窗口句柄后關(guān)閉所有窗口示例

    枚舉窗口句柄后關(guān)閉所有窗口示例

    這篇文章主要介紹了關(guān)閉所有窗口的方法,原理是枚舉所有窗口句柄,然后發(fā)送WM_CLOSE消息來(lái)關(guān)閉窗口,需要的朋友可以參考下
    2014-01-01
  • C語(yǔ)言中位運(yùn)算符"|"的5種高級(jí)用法總結(jié)

    C語(yǔ)言中位運(yùn)算符"|"的5種高級(jí)用法總結(jié)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言中位運(yùn)算符"|"的5種高級(jí)用法,文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,需要的可以參考一下
    2023-04-04
  • C++ 自增、自減運(yùn)算符的重載和性能分析小結(jié)

    C++ 自增、自減運(yùn)算符的重載和性能分析小結(jié)

    這篇文章主要介紹了C++ 自增、自減運(yùn)算符的重載和性能分析小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • c_str()的用法詳細(xì)解析

    c_str()的用法詳細(xì)解析

    c_str()就是把string類對(duì)象轉(zhuǎn)換成和c兼容的char *類型。這是為了與c語(yǔ)言兼容,在c語(yǔ)言中沒(méi)有string類型,故必須通過(guò)string類對(duì)象的成員函數(shù)c_str()把string 對(duì)象轉(zhuǎn)換成c中的字符串樣式
    2013-09-09
  • C 語(yǔ)言程序結(jié)構(gòu)示例解析

    C 語(yǔ)言程序結(jié)構(gòu)示例解析

    本文主要講解C 語(yǔ)言程序結(jié)構(gòu),這里提供簡(jiǎn)單的示例來(lái)講解C 語(yǔ)言程序的結(jié)構(gòu),有利于剛剛學(xué)習(xí)C 語(yǔ)言的同學(xué)理解程序結(jié)構(gòu)
    2016-08-08

最新評(píng)論

巴塘县| 汕尾市| 肃南| 太谷县| 郸城县| 保山市| 镇宁| 通江县| 武夷山市| 张家界市| 庄河市| 新津县| 丹江口市| 双辽市| 合作市| 南陵县| 黎城县| 彭州市| 罗甸县| 玉树县| 通化市| 铅山县| 渭南市| 天津市| 阜城县| 滕州市| 富阳市| 长春市| 敦煌市| 邵阳市| 邢台市| 炎陵县| 花莲市| 荆门市| 石柱| 南昌市| 板桥市| 永丰县| 营口市| 灵宝市| 易门县|