我在DIALOG上点击“打开” 按钮,就要弹出对话框让我选择文件,功能类似于常见软件中的“打开”菜单,用什么控件啊》

解决方案 »

  1.   

    通用的对话框类中的CFileDialog!
      

  2.   

    不用什么控件的,直接调用通用对话框的类就可以了!CFileDialog!
      

  3.   

    BOOL     bOpenFileDialog = TRUE;
    LPCTSTR  lpszDefExt      = NULL;
    LPCTSTR  lpszFileName    = NULL;
    DWORD    dwFlags         = OFN_HIDEREADONLY | 
                                        OFN_EXPLORER | 
                      OFN_ALLOWMULTISELECT | 
               0;
    LPCTSTR  lpszFilter      = _T("Word 文档 (*.doc)|*.doc|WPS 文档 (*.wps)|*.wps|BMP 位图文件 (*.bmp)|*.bmp|All Files (*.*)|*.*||");
    CWnd* pParentWnd         = ::AfxGetMainWnd();
    CFileDialog fileDialog(bOpenFileDialog, _T(""), NULL, dwFlags, lpszFilter, pParentWnd);
        fileDialog.m_ofn.hInstance = ::AfxGetInstanceHandle(); if (IDOK == fileDialog.DoModal())
    {
    CString strFileName = _T("");  // 文件名
    CString strPathName = _T("");  // 路径
    strPathName = fileDialog.GetPathName(); strFileName = fileDialog.GetFileName(); strFileName = strPathName.Mid(nIndex + 1);
    CFile file;
    if (!file.Open((LPCTSTR)strPathName, 
                          CFile::modeRead | CFile::shareDenyWrite, 
                          NULL))
    { ...}
    else {
                        ...
                      }
      

  4.   

    不是控件啊,那时MFC中封装的一个类