壹念至贱 2019-03-19 09:09 采纳率: 50%
浏览 460
已采纳

VS2017 MFC 如何调用其他类的ListCtrl信息?

因工作需要自学MFC,目前我在A类里建了一个ListCtrl控件,创建控件变量为m_ListCtrl,然后我需要在B类里获取这个控件的信息。第一次我想在B类里创建个实例对象,但是取不到信息。第二次想将m_ListCtrl这个变量作为参数传到B类,但是提示:“无法引用 函数 "CListCtrl::CListCtrl(const CListCtrl &)" (已隐式声明) -- 它是已删除的函数”。第三次我想在A类将控件里的内容放到CStringList里,但是返回值还是提示已被删除。看网上说用什么引用,但是没太搞懂。所以写了这段

CStringList* CStuInfoManag::GetListInfo()
{

    int iColumnNum, iRowCount, i, j;
    CString strText;
    CStringList cList;
    cList.RemoveAll();
    cList.
    iColumnNum = m_ListCtrl.GetHeaderCtrl()->GetItemCount();
    iRowCount = m_ListCtrl.GetItemCount();

    for (i = 0; i < iColumnNum; i++)
    {
        for (j = 0; j < iRowCount; j++) 
        {
            strText = m_ListCtrl.GetItemText(j,i);
            cList.AddTail(strText);
        }
    }
    return &cList;
}

这样提示错误为:class "CStringList" 没有成员 "iColumnNum"。
以上是我的尝试方法,我该如何在B类里取得A类ListCtrl的信息?

  • 写回答

2条回答 默认 最新

  • 白色一大坨 2019-03-19 15:27
    关注

    看了题主代码,实际上就是个值域问题,你在Excel类里面建的是临时变量,根本不是你操作界面的类对象性,所以list肯定是空的。

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

报告相同问题?

悬赏问题

  • ¥15 机器人轨迹规划相关问题
  • ¥15 word样式右侧翻页键消失
  • ¥15 springboot+vue 集成keycloak sso到阿里云
  • ¥15 win7系统进入桌面过一秒后突然黑屏
  • ¥30 backtrader对于期货交易的现金和资产计算的问题
  • ¥15 求C# .net4.8小报表工具
  • ¥15 安装虚拟机时出现问题
  • ¥15 Selenium+docker Chrome不能运行
  • ¥15 mac电脑,安装charles后无法正常抓包
  • ¥18 visio打开文件一直显示文件未找到