我现在建立了一个带按一个钮的对话框,按钮名字是BUTTON1,我直接就双击按钮打开函数响应,然后想要拷贝这段代码需要修改什么,或者是还应该做什么工作,然后把代码考到响应那里
  1
  2 void CFileSearchDlg::TraverseFolder( const CString& strDir,std::vector<CString>& vecFile )
  3 {
  4 WIN32_FIND_DATA FindFileData;
  5
  6 CString strDirTmp;
  7 strDirTmp = strDir;
  8 strDirTmp += "\\*.*";
  9
  10 HANDLE hFind=::FindFirstFile(strDirTmp,&FindFileData);
  11 if(INVALID_HANDLE_VALUE == hFind)
  12 {
  13 return;
  14 }
  15
  16 while(TRUE)
  17 {
  18 if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
  19 {
  20 if(FindFileData.cFileName[0]!= _T('.'))
  21 {
  22 strDirTmp = strDir;
  23 strDirTmp += "\\";
  24 strDirTmp += FindFileData.cFileName;
  25 TraverseFolder(strDirTmp,vecFile) ;
  26 }
  27 }
  28 else
  29 {
  30 strDirTmp = strDir;
  31 strDirTmp += "\\";
  32 strDirTmp += FindFileData.cFileName;
  33 vecFile.push_back(strDirTmp);
  34 }
  35 if(!FindNextFile(hFind,&FindFileData)) break;
  36 }
  37 FindClose(hFind);
  38
  39 }

解决方案 »

  1.   

     void CFileSearchDlg::TraverseFolder( const CString& strDir,std::vector<CString>& vecFile )
    在头文件中将函数声明的参数补全,就是括号里的东西( const CString&
    strDir,std::vector<CString>& vecFile )。然后在函数定义中也将括号的所有参数都copy一下,函数名、类名函数返回类型什么的都不用动。再将上边大括号里的东西拷到你的OnButton1(){将上边函数的所有内容都拷贝进这个大括号里边}....最后里边的东西就要自己去编译调试咯
      

  2.   

    void TraverseFolder( const CString& strDir,std::vector<CString>& vecFile );添加成你对话框类得成员函数,然后在按钮的消息响应函数里调用这个函数
      

  3.   

    是在cmyapp右键添加成员函数吗?不行啊,我函数类型填的是void,后面的声明添了TraverseFolder( const CString&amp; strDir,std::vector<CString>&amp; vecFile ); 看看是哪里出了问题? 多谢了
      

  4.   

    还有 为什么把原来默认有的按钮删除 自己新建一个按钮 dlg类就不见了