鼠标右击产生菜单
点击菜单的按钮
激活OnButtonadd()函数
OnButtonadd()是实现增加一个品种的,并且增加后菜单不会消失那么如何实现主界面的列表中显示这个新增的品种呢void CItem::OnButtonadd()
{
    ……
    CDataDlg DataDlg;
    DataDlg.Updatelist();//更新界面的函数,该表m_list1的值
}
列表的关联变量为m_list1,怎么实现m_list1的更新呢
我这样做更新不了

解决方案 »

  1.   

    试试看在DataDlg.cpp定义一个全局变量CDataDlg* pDlg;
    在OnInitDialog里面pDlg = this;在OnButtonadd所在的cpp声明变量extern CDataDlg* pDlg;
    然后pDlg->UpdateList();//更新界面的函数,该表m_list1的值
      

  2.   

    谢谢大哥   可以的
    是不是这样就把pDlg声明为全局变量啊
    然后使用  所以就可以了啊?
    想问下  
    【在OnInitDialog里面pDlg = this;】
    这句是干什么的?如果程序中全局变量很多  有什么害处?
      

  3.   

    一个类可以生成多个实例
    你CDataDlg DataDlg; 的这个实例并不是当前显示的对话框的实例,所以失败
    而pDlg = this;就是用全局变量来保存当前的对话框的指针,这样在使用Updatelist的时候就是操作的当前显示的对话框