好名字留给儿子 2021-05-21 14:59 采纳率: 33.3%
浏览 152
已采纳

MFC中ListControl空间SetItemText无法显示数据

double  d = 0.65;

 

m_List.InsertColumn(0, _T("原图像文件名"), LVCFMT_CENTER, rect.Width() / 2, 0);
m_List.InsertColumn(1, _T("d的值"), LVCFMT_CENTER, rect.Width() / 2, 1);

CFileFind finder;
    CStringList filelist;//文件列表
    BOOL bResult = finder.FindFile(strPathNametwo);
    int i = 0;
    while (bResult)
    {
        bResult = finder.FindNextFile();
        //判断是否是目录或者是隐藏文件,又或者是".."和".",如果是,进入下一轮循环
        if (finder.IsDirectory() || finder.IsDots() || finder.IsHidden())
            continue;
        else//如果是文件
        {
            CString str;
            //得到文件名
            str = finder.GetFileName();
            //得到文件后缀名
            int nLen = str.GetLength() - finder.GetFileTitle().GetLength();
            str = str.Right(nLen);
            //判断文件格式,如果是图像文件,将其完整的路径保存在列表中
            if (str == ".jpg" || str == ".png" || str == ".bmp" || str == ".gif" || str == ".tif") {
                filelist.AddTail(finder.GetFilePath());
                CString filePath = finder.GetFilePath();
                Mat imageInput = imread(filePath.GetBuffer(0));
                m_List.InsertItem(index, finder.GetFileName());    // 文件名
                //m_List.SetItemText(index, 1, "0");                // 相似度    // 更新
                m_List.SetItemText(index, 1, (LPCTSTR)(&d));
            
                index++;
                i++;

double  d = 0.65;



m_List.InsertColumn(0, _T("原图像文件名"), LVCFMT_CENTER, rect.Width() / 2, 0);
m_List.InsertColumn(1, _T("d的值"), LVCFMT_CENTER, rect.Width() / 2, 1);

CFileFind finder;
    CStringList filelist;//文件列表
    BOOL bResult = finder.FindFile(strPathNametwo);
    int i = 0;
    while (bResult)
    {
        bResult = finder.FindNextFile();
        //判断是否是目录或者是隐藏文件,又或者是".."和".",如果是,进入下一轮循环
        if (finder.IsDirectory() || finder.IsDots() || finder.IsHidden())
            continue;
        else//如果是文件
        {
            CString str;
            //得到文件名
            str = finder.GetFileName();
            //得到文件后缀名
            int nLen = str.GetLength() - finder.GetFileTitle().GetLength();
            str = str.Right(nLen);
            //判断文件格式,如果是图像文件,将其完整的路径保存在列表中
            if (str == ".jpg" || str == ".png" || str == ".bmp" || str == ".gif" || str == ".tif") {
                filelist.AddTail(finder.GetFilePath());
                CString filePath = finder.GetFilePath();
                Mat imageInput = imread(filePath.GetBuffer(0));
                m_List.InsertItem(index, finder.GetFileName());    // 文件名
                //m_List.SetItemText(index, 1, "0");                // 相似度    // 更新
                m_List.SetItemText(index, 1, (LPCTSTR)(&d));
            
                index++;
                i++;
                //waitKey(500);//暂停0.5S
            }

        }
    }


                //waitKey(500);//暂停0.5S
            }

        }
    }

  • 写回答

2条回答 默认 最新

  • qfl_sdu 2021-05-21 16:06
    关注

    _T("d的值")这么写,d就是一个字符,MFC不会给你替换的。在InsertColumn前,先用

    CString str;

    str.Format("%lf",d);

    m_List.InsertColumn(1, str, LVCFMT_CENTER, rect.Width() / 2, 1);

    如有帮助,请采纳一下,谢谢。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd