怎样打开浏览文件夹对话框?

joefoxreal 2003-04-03 09:27:23
在pb中怎样实现打开浏览文件夹对话框
...全文
48 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
efis 2003-04-09
  • 打赏
  • 举报
回复
打开 windows通用的打开文件夹的窗口

声明API如下:
Function unsignedlong SHGetPathFromIDListA( unsignedlong pidl, ref string pszPath) Library 'shell32'
Function unsignedlong SHBrowseForFolderA(browseinfo lpbrowseinfo) LIBRARY 'shell32'
Subroutine CoTaskMemFree(ulong idlist) Library 'ole32'

调用时采用如下语句:
constant long bif_ReturnOnlyFSDirs=1
browseinfo lstr_bi
itemidlist lstr_idl
unsignedlong ll_pidl
unsignedlong ll_r
integer li_pos
string ls_Path
unsignedlong ll_null

setnull(ll_null)

lstr_bi.hOwner=handle(awi_parent) //得到当前父窗体的句柄
lstr_bi.pidlRoot=0
lstr_bi.lpszTitle=as_caption
//lstr_bi.ulFlags=bif_ReturnOnlyFSDirs
lstr_bi.pszDisplayName=space(255)
lstr_bi.lpfn=ll_Null

ll_pidl=SHBrowseForFolderA(lstr_bi)
ls_Path=space(255)
ll_r=SHGetPathFromIDListA(ll_pidl,ls_Path)
CoTaskMemFree( ll_pidl )

return ls_Path
qian_0_wei 2003-04-07
  • 打赏
  • 举报
回复
pb6和7没这语句
可以用
GetFileSaveName
GetFileOpenName

具体可以查看pb 帮助
冷箫轻笛 2003-04-05
  • 打赏
  • 举报
回复
getfolder
用法看帮助
csdsjkk 2003-04-04
  • 打赏
  • 举报
回复
pb8:
GetFolder ( title, directory )

680

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder API 调用
社区管理员
  • API 调用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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