CFileDialog类 记事

王朝other·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

CFileDialog类

函数原形:

explicit CFileDialog(

BOOL bOpenFileDialog, //ture打开,false保存

LPCTSTR lpszDefExt = NULL,

LPCTSTR lpszFileName = NULL,

DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,

LPCTSTR lpszFilter = NULL,

CWnd* pParentWnd = NULL,

DWORD dwSize = 0

);

选择多个文件,最重要的是加上OFN_ALLOWMULTISELECT标志。当用户选择多个文件,CFileDialog会把选择后的文件名拷贝到一个缓冲区,默认这个缓冲区有200多个字符,这对于很多情况来说太小了。你可以将m_ofn.lpstrFile替换成自己的缓冲区指针:

char sBuffer[6000];

sBuffer[0] = 0;

CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY |OFN_OVERWRITEPROMPT |

OFN_ALLOWMULTISELECT,

"C++ source|*.cpp|All files|*.*||");

dlg.m_ofn.lpstrFile = sBuffer;

dlg.m_ofn.nMaxFile = 6000;

if(dlg.DoModal()==IDOK)

{

POSITION pos=dlg.GetStartPosition();

while (pos != NULL)

{

fi++; //放入CString file[255]数组中保存

file[fi]=dlg.GetNextPathName(pos);

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航