1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
filesPath.clear();
CString OpenFilter;
OpenFilter = "XYZ File (*.xyz)|*.xyz|";
OpenFilter += "CSV File (*.csv)|*.csv|";
OpenFilter += "All Files (*.*)|*.*||";
CFileDialog FileOpenDialog(TRUE, NULL, NULL,
OFN_ALLOWMULTISELECT|OFN_FILEMUSTEXIST|OFN_HIDEREADONLY|OFN_PATHMUSTEXIST,
OpenFilter, // filter
AfxGetMainWnd());// the parent window
CString fileName;
const int c_cMaxFiles = 50; // 100 fichiers maximum
const int c_cbBuffSize = (c_cMaxFiles * (MAX_PATH + 1)) + 1;
FileOpenDialog.GetOFN().lpstrFile = fileName.GetBuffer(c_cbBuffSize);
FileOpenDialog.GetOFN().nMaxFile = c_cbBuffSize; // attention : malgré le
// nom de l'attribut, il s'agit bien de la
// taille du buffer et non du nombre
// max de fichier !
if(FileOpenDialog.DoModal()==IDOK)
{
POSITION pos=FileOpenDialog.GetStartPosition();
while(pos)
{
std::string path = (char *)FileOpenDialog.GetNextPathName(pos).GetString();
filesPath.push_back(path);
}
}
fileName.ReleaseBuffer();
if (filesPath.size()> 0) gl.CreateObjects(filesPath); |
Partager