要打开电脑下面的一个文件夹,而不是文件!

时间:2020-12-17 21:38:28
改用什么控间阿,用opendialog是显示文件的,如果用win31 下面的DiverComcoBox
和DirectoryListbox这两个来实现我又觉得太土了,help!

11 个解决方案

#1


将opendialog options属性的ofOldStyleDialog改为true试试

#2


SelectDirectory

#3


yuanque(无心快语) 的方法不行, whitelion(chinaproject.51.net) 你说的什么哦,不懂也!

#4


不好意思打扰啦 各位:

马上就要新的一年了,先祝大家在新的一年里开开心心,高高兴兴……


也希望大家不要把今年的帖子放到明年再揭帖,特别是2002年9月份以前的帖子,今年的事情今年办完,不要拖拖拉拉的放到明年去!

自己看一下自己还有没有没有揭帖的 或者没有人回复的,特别是2002年9月份以前的,9月份以后的如果没有得到答案的可以暂时不用急着揭帖,如果已经得到答案的,希望也马上去揭帖,还有一些没有人恢复的帖子,自己可以去删掉,否则斑竹删掉的话要扣信誉值,自己删掉没有人回复,或者只有自己回复的帖子不扣信誉值的
请大家看看自己的问题

DataBase版的请参照
http://expert.csdn.net/Expert/topic/1265/1265029.xml?temp=.1202509

谢谢大家的合作与支持,祝大家过个好年……

#5


我kao,怎么在我的文章里面灌水,我faint

#6


//头文件包括方式
    #define NO_WIN32_LEAN_AND_MEAN
    #include <shlobj.h>

    #include <vcl.h>
   #pragma hdrstop


   

    char Buffer[MAX_PATH];
    AnsiString StrPath = "";
    AnsiString StrRoot = ExtractFilePath(Application->ExeName);

    BROWSEINFO bi;
    LPITEMIDLIST pidlBrowse; //PIDL selected by user

    bi.hwndOwner = this->Handle;
    bi.pidlRoot = NULL;
    bi.pszDisplayName = Buffer;
    bi.lpszTitle = "请选择一个目录";
    bi.ulFlags = BIF_RETURNONLYFSDIRS|BIF_STATUSTEXT;
//bi.lpfn = BrowseCallbackProc;
bi.lpfn = NULL;
    bi.lParam = BFFM_SELCHANGED;

#7



    //头文件包括方式
    #define NO_WIN32_LEAN_AND_MEAN
    #include <shlobj.h>

   
    char Buffer[MAX_PATH];
    AnsiString StrPath = "";
    AnsiString StrRoot = ExtractFilePath(Application->ExeName);

    BROWSEINFO bi;
    LPITEMIDLIST pidlBrowse; //PIDL selected by user

    bi.hwndOwner = this->Handle;
    bi.pidlRoot = NULL;
    bi.pszDisplayName = Buffer;
    bi.lpszTitle = "请选择一个目录";
    bi.ulFlags = BIF_RETURNONLYFSDIRS|BIF_STATUSTEXT;
//bi.lpfn = BrowseCallbackProc;
bi.lpfn = NULL;
    bi.lParam = BFFM_SELCHANGED;



    pidlBrowse = SHBrowseForFolder(&bi);
    if (pidlBrowse != NULL)
    {
if (SHGetPathFromIDList(pidlBrowse,Buffer))
        {
         StrPath = Buffer;
        }
        GlobalFree(pidlBrowse);
    }

#8


看看Help

#include <FileCtrl.hpp>
const SELDIRHELP = 1000;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString Dir = "C:\\Program Files\\MyApp";
  if (SelectDirectory(Dir, TSelectDirOpts() << sdAllowCreate << sdPerformCreate << sdPrompt,SELDIRHELP))
    Label1->Caption = Dir;

#9


不能在这里灌水,能不能打个广告:)

-----------------------------------------------------------------
欢迎访问:http://CoolSlob.fykj.com/
本站◆第一主打:《查询利器》,在这里你可以查询CSDN FAQ---目前唯一可查询的站点(CSDN自身也不支持)
  ◆第二主打:《CSDN精华贴》,在这里你可以看到网友们出奇的搞笑本领;可以看到网友们高深莫测的技术功底:)
  ◆第三主打:《下载专区》,在这里你可以下载到C++ Primer 3rd这样的经典书籍,可以下载到够Inside的《Insdie SQL Server7.0》,前些时候,我本人就是借助这本书来破解MS SQL Server数据库的.mdf和.ldf文件的:)
  ◆只要有大家的支持,网站有可能加入搜索“CSDN精华贴”功能!

#10


用ShellExecute

#11


看你们的广告我笑晕了,^_^

#1


将opendialog options属性的ofOldStyleDialog改为true试试

#2


SelectDirectory

#3


yuanque(无心快语) 的方法不行, whitelion(chinaproject.51.net) 你说的什么哦,不懂也!

#4


不好意思打扰啦 各位:

马上就要新的一年了,先祝大家在新的一年里开开心心,高高兴兴……


也希望大家不要把今年的帖子放到明年再揭帖,特别是2002年9月份以前的帖子,今年的事情今年办完,不要拖拖拉拉的放到明年去!

自己看一下自己还有没有没有揭帖的 或者没有人回复的,特别是2002年9月份以前的,9月份以后的如果没有得到答案的可以暂时不用急着揭帖,如果已经得到答案的,希望也马上去揭帖,还有一些没有人恢复的帖子,自己可以去删掉,否则斑竹删掉的话要扣信誉值,自己删掉没有人回复,或者只有自己回复的帖子不扣信誉值的
请大家看看自己的问题

DataBase版的请参照
http://expert.csdn.net/Expert/topic/1265/1265029.xml?temp=.1202509

谢谢大家的合作与支持,祝大家过个好年……

#5


我kao,怎么在我的文章里面灌水,我faint

#6


//头文件包括方式
    #define NO_WIN32_LEAN_AND_MEAN
    #include <shlobj.h>

    #include <vcl.h>
   #pragma hdrstop


   

    char Buffer[MAX_PATH];
    AnsiString StrPath = "";
    AnsiString StrRoot = ExtractFilePath(Application->ExeName);

    BROWSEINFO bi;
    LPITEMIDLIST pidlBrowse; //PIDL selected by user

    bi.hwndOwner = this->Handle;
    bi.pidlRoot = NULL;
    bi.pszDisplayName = Buffer;
    bi.lpszTitle = "请选择一个目录";
    bi.ulFlags = BIF_RETURNONLYFSDIRS|BIF_STATUSTEXT;
//bi.lpfn = BrowseCallbackProc;
bi.lpfn = NULL;
    bi.lParam = BFFM_SELCHANGED;

#7



    //头文件包括方式
    #define NO_WIN32_LEAN_AND_MEAN
    #include <shlobj.h>

   
    char Buffer[MAX_PATH];
    AnsiString StrPath = "";
    AnsiString StrRoot = ExtractFilePath(Application->ExeName);

    BROWSEINFO bi;
    LPITEMIDLIST pidlBrowse; //PIDL selected by user

    bi.hwndOwner = this->Handle;
    bi.pidlRoot = NULL;
    bi.pszDisplayName = Buffer;
    bi.lpszTitle = "请选择一个目录";
    bi.ulFlags = BIF_RETURNONLYFSDIRS|BIF_STATUSTEXT;
//bi.lpfn = BrowseCallbackProc;
bi.lpfn = NULL;
    bi.lParam = BFFM_SELCHANGED;



    pidlBrowse = SHBrowseForFolder(&bi);
    if (pidlBrowse != NULL)
    {
if (SHGetPathFromIDList(pidlBrowse,Buffer))
        {
         StrPath = Buffer;
        }
        GlobalFree(pidlBrowse);
    }

#8


看看Help

#include <FileCtrl.hpp>
const SELDIRHELP = 1000;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
  AnsiString Dir = "C:\\Program Files\\MyApp";
  if (SelectDirectory(Dir, TSelectDirOpts() << sdAllowCreate << sdPerformCreate << sdPrompt,SELDIRHELP))
    Label1->Caption = Dir;

#9


不能在这里灌水,能不能打个广告:)

-----------------------------------------------------------------
欢迎访问:http://CoolSlob.fykj.com/
本站◆第一主打:《查询利器》,在这里你可以查询CSDN FAQ---目前唯一可查询的站点(CSDN自身也不支持)
  ◆第二主打:《CSDN精华贴》,在这里你可以看到网友们出奇的搞笑本领;可以看到网友们高深莫测的技术功底:)
  ◆第三主打:《下载专区》,在这里你可以下载到C++ Primer 3rd这样的经典书籍,可以下载到够Inside的《Insdie SQL Server7.0》,前些时候,我本人就是借助这本书来破解MS SQL Server数据库的.mdf和.ldf文件的:)
  ◆只要有大家的支持,网站有可能加入搜索“CSDN精华贴”功能!

#10


用ShellExecute

#11


看你们的广告我笑晕了,^_^