BCB中OpenDialog如何选中文件夹而不是文件

SYW# 2020-09-28 02:15:25
我想用BCB的OpenDialog选中一个文件夹,想对选中的文件夹底下的文件进行批处理操作

(注:之前是用OpenDialog直接一个个打开文件进行操作的,后来发现,文件按数量少还可以应付,文件数量多就太繁了,所以想知道有没有什么方法可以选中文件夹而不是文件)
...全文
764 24 打赏 收藏 转发到动态 举报
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
qzjhjxj 2020-09-30
  • 打赏
  • 举报
回复
里面有详细的说明,文件名:win10的winhlp32解決方案,按他教的做就可以了。
SYW# 2020-09-30
  • 打赏
  • 举报
回复
引用 23 楼 qzjhjxj 的回复:
里面有详细的说明,文件名:win10的winhlp32解決方案,按他教的做就可以了。


非常感谢
ooolinux 2020-09-29
  • 打赏
  • 举报
回复
引用 17 楼 LR_LULU的回复:
[quote=引用 4 楼 ooolinux 的回复:]查help看看。老的资料都是bcb6的。


我是Win10 专业版,然后我点击help是这个样子的

[/quote] 有个 win10的winhlp32解决方案 工具,装上就可以了。
SYW# 2020-09-29
  • 打赏
  • 举报
回复
引用 4 楼 ooolinux 的回复:
查help看看。老的资料都是bcb6的。


我是Win10 专业版,然后我点击help是这个样子的

SYW# 2020-09-29
  • 打赏
  • 举报
回复
引用 14 楼 qzjhjxj 的回复:
AnsiString Dir = "C:\\Program Files\\MyApp"; 把这句改成你默认的目录名。
你的方式:

也调试成功。


呃。。。那个,大哥,这个默认的目录名是指?在哪里改啊?我看你给我的这段程序里没改嘛(大哥,不好意思,我刚学BCB没多久,还不太通)


SYW# 2020-09-29
  • 打赏
  • 举报
回复
引用 6 楼 ooolinux 的回复:
这个问题我问过,你是BCB什么版本?


我是用的是 BCB 6.0
ooolinux 2020-09-29
  • 打赏
  • 举报
回复
win10那个winhlp32网上有。
  • 打赏
  • 举报
回复
win7的就可以用,甚至xp里的winhlp32.exe复制进去也可以用

SYW# 2020-09-29
  • 打赏
  • 举报
回复
引用 18 楼 ooolinux 的回复:
[quote=引用 17 楼 LR_LULU的回复:][quote=引用 4 楼 ooolinux 的回复:]查help看看。老的资料都是bcb6的。


我是Win10 专业版,然后我点击help是这个样子的

[/quote]
有个 win10的winhlp32解决方案 工具,装上就可以了。[/quote]


没有Win10的
qzjhjxj 2020-09-28
  • 打赏
  • 举报
回复
AnsiString Dir = "C:\\Program Files\\MyApp"; 把这句改成你默认的目录名。 你的方式: 也调试成功。
ooolinux 2020-09-28
  • 打赏
  • 举报
回复
引用 12 楼 qzjhjxj 的回复:
调试成功。
你可以试一下函数的另一种重载形式(参数不同),出来的界面不一样,我比较喜欢另一种。
qzjhjxj 2020-09-28
  • 打赏
  • 举报
回复
调试成功。
qzjhjxj 2020-09-28
  • 打赏
  • 举报
回复
我试了下,编译能过,但运行出现以上提示。
qzjhjxj 2020-09-28
  • 打赏
  • 举报
回复
#include <FileCtrl.hpp> 把这句话加在 .h 文件里。
ooolinux 2020-09-28
  • 打赏
  • 举报
回复
引用 7 楼 qzjhjxj 的回复:
BCB6帮助文件
工程静态编译时会链接不到,可以把vclx.lib静态库加入工程中。
ooolinux 2020-09-28
  • 打赏
  • 举报
回复
可以把vclx.lib静态库加入工程中:拷贝过来,Add to Project。 如果是高版本RAD,也可以把头文件改为 #include <Vcl.FileCtrl.hpp> 即可。
qzjhjxj 2020-09-28
  • 打赏
  • 举报
回复
BCB6帮助文件
ooolinux 2020-09-28
  • 打赏
  • 举报
回复
这个问题我问过,你是BCB什么版本?
SYW# 2020-09-28
  • 打赏
  • 举报
回复
#include <FileCtrl.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
AnsiString Path;
AnsiString HaHa;
char *p;
if (SelectDirectory("请选择目录","",Path))
{
HaHa=Path;
ShowMessage(HaHa);

}
}
我一开始是新建一个羡慕,拖了一个按钮,在按钮里面输入上面的代码,没有出现任何问题

但是我把它放在别的程序里(也是一个按钮的动作),就会报出以下错
[Linker Error] Unresolved external '__fastcall Filectrl::SelectDirectory(const System::AnsiString, const System::WideString, System::AnsiString&)' referenced from D:\1. BCB文件\9. 格力_机床\A0_4_机床\UNIT1_NCTOJGF_1.OBJ

加载更多回复(4)

13,873

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧