zoukankan      html  css  js  c++  java
  • 选择目录对话框和选择文件对话框

    选择目录对话框

    //选择目录按钮
    void CDcPackerDlg::OnBnClickedDecgen()    
    {
        
    char szPath[MAX_PATH];     //存放选择的目录路径 
        CString str;

        ZeroMemory(szPath, 
    sizeof(szPath));   

        BROWSEINFO bi;   
        bi.hwndOwner 
    = m_hWnd;   
        bi.pidlRoot 
    = NULL;   
        bi.pszDisplayName 
    = szPath;   
        bi.lpszTitle 
    = "请选择需要打包的目录:";   
        bi.ulFlags 
    = 0;   
        bi.lpfn 
    = NULL;   
        bi.lParam 
    = 0;   
        bi.iImage 
    = 0;   
        
    //弹出选择目录对话框
        LPITEMIDLIST lp = SHBrowseForFolder(&bi);   

        
    if(lp && SHGetPathFromIDList(lp, szPath))   
        
    {
            str.Format(
    "选择的目录为 %s",  szPath);
            AfxMessageBox(str); 

            
        }

        
    else   
            AfxMessageBox(
    "无效的目录,请重新选择");   
    }



    选择文件对话框

    CString CDcPackerDlg::BootOpenDialog()   //返回选择的文件名称
    {
        CString strFile 
    = _T("");

        CFileDialog    dlgFile(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T(
    "Describe Files (*.cfg)|*.cfg|All Files (*.*)|*.*||"), NULL);

        
    if (dlgFile.DoModal())
        
    {
            strFile 
    = dlgFile.GetPathName();
        }


        
    return strFile;
    }


    //加载文件按钮
    void CDcPackerDlg::OnBnClickedSelectdec()
    {
        
    // TODO: Add your control notification handler code here
        m_strDescPath = "";        //类的成员变量

        
    //"打开文件"对话框,选择文件,返回其路径
        m_strDescPath = BootOpenDialog();

        
    }
  • 相关阅读:
    【工具类】Stream流构建指定长度的时间集合
    【Java】 Java中的浅拷贝和深拷贝
    【网络协议】 TCP三次握手的流程
    【工具库】Java实体映射工具MapStruct
    【并发编程】Java中的锁有哪些?
    【ORM】Mybatis与JPA的区别
    【并发编程】ThreadLocal
    【SpringBoot】SpringBoot 处理后端返回的小数(全局配置 + 定制化配置)
    实战开发三步走
    项目:jSon和Ajax登录功能
  • 原文地址:https://www.cnblogs.com/zhoug2020/p/2545512.html
Copyright © 2011-2022 走看看