两天了,还是没有搞定,只能求助高手了。请问:在主对话框中如何调用子对话框中的过程或函数;在子对话框中要用到一个硬件设备,但这个硬件设备的触发过程又在主对话框中的,所以要在主对话框中调用子对话框中的过程;当然情况还要比这复杂,我就想问一下如何实现这个问题,谢谢

解决方案 »

  1.   

    在子对话框对应的.cpp中声明一个类对象:CxxDlg xxDlg;在主对话框对应的.cpp中extern CxxDlg xxDlg;然后就可以通过对象调用它的函数
      

  2.   

    子对话框:CxxDlg dlgCxxDlg;在打开子对话框对应的.cpp中声明一个类对象指针:CxxDlg* xxDlg;在主对话框对应的.cpp中定义:extern CxxDlg* xxDlg;然后在打开子对话框时:xxDlg = &dlgCxxDlg; 
    这样就可以引用了
      

  3.   

    设计有问题,该硬件设备应该单出来包装成一个类来处理,而不是包成一个界面类的函数,这样子对话框可以调用它的函数,主对话框也可以调用它的函数,到时候只需要 
    Include 该类 进来以后,假设为CHardWare为包装类。
    CHardWare mm;
    mm.func1(); 就可以了!