在VC中如何使用对话框让用户选择自己保存文件的路径

其他的就不多说了,就说说关键代码吧~

第一种:含路径和文件名的(假设为*.mdb文件)

CFileDialog   FileDlg(false,"*.mdb",NULL,OFN_HIDEREADONLY   |   OFN_OVERWRITEPROMPT,  
  "mdb文件 (*.mdb)|*.mdb|所有文件 (*.*)|*.*||");    //若为ture则显示标题为打开,若为false则是另存为。

FileDlg.m_ofn.lpstrTitle="保存数据文件"; //设置小标题,该行可要可不要 
if(FileDlg.DoModal()==IDOK)  
{  
  SetDlgItemText(IDC_EDIT_PATH,FileDlg.GetPathName());//将获取到的路径以及文件名,传给edit
}

例图:

 

第二种:只有路径而不需要文件名的

char     buf[MAX_PATH];  
ZeroMemory(buf,   sizeof(buf));  
BROWSEINFO       bi;  
bi.hwndOwner   =   m_hWnd;  
bi.pidlRoot   =   NULL;  
bi.pszDisplayName   =   buf;  
bi.lpszTitle   =   "请选择目录:";  
bi.ulFlags = BIF_EDITBOX ;
bi.lpfn   =   NULL;  
bi.lParam   =   0;  
bi.iImage     =   0;  
LPITEMIDLIST     lp   =   SHBrowseForFolder(&bi);  
   
if(lp   &&   SHGetPathFromIDList(lp,   buf))  
{  
  SetDlgItemText(IDC_EDIT_PATH,buf);
}

例图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值