就是作多个基于对话框的程序,其中都用到一个相同的对话框,上有一个CCheckList的列表框,和两个按钮。用户点击此对话框中的控件做一些操作,程序使用类中变量和函数的形式把值传出来。想做一个类,其中创建了这个对话框和这些控件例如使用AfxRegisterWndClass和CreateEx等。然后加入不同的project中,在classview中就有这个类了,然后创建这个类的实例,在调用它的函数,完成用户交互,在把结果传出来。这样做不同project时用到这个对话框时不用都要单独的用insert dialog加入类中了,直接把这个类*.h和*.cpp加入项目就可以用了,提高一下效率。不知道我说清了没?大家有没有现成的实例程序发一份我看看。谢谢了!我的邮件:[email protected]或者[email protected]

解决方案 »

  1.   

    我不知道是不是了解你的意思,不过既然需要和用户交互,应该要使用到对话框的吧?不然只加入*.h和*.cpp,怎么得到用户的输入?
      

  2.   

    就是说这个对话框和其中和用户作交换的控件和函数都是写在一个类中的,我要想在其他的工程中用到这个对话框 直接加入这个类就成了 不用在工程中用INSERT DIALOG作个对话框
      

  3.   

    1.
    把这个对话框做到一个DLL中去(使用AFX_EXT_CLASS导出对话框类),这些应用都调用这个DLL,这样只需要包含你的对话框的头文件2.
    将该对话框所在的工程加到你的应用所在的Workspace,然后在Resource View中直接拖动该对话框到你的应用工程,VC会直接将对话框中的所有内容自动拷贝,然后将你的对话框的.h和.cpp文件通过Project->Add to project->Files方式加到你的应用所在的工程
      

  4.   

    我想了想,是否可以这样,先建个基于CWnd的类,然后在后造函数中用 AfxRegisterWndClass建个窗口在定义几个控件的类和窗口绑定在加入函数进行交互,用show显示窗口。再把这个类的.h.cpp加入新建的项目,使用时建个类的实例在调用其中的函数交互和显示。
      

  5.   

    可以实现,不过对话框中的常用控制都得自己new和Create,就是完全动态建立对话框,标准做法了,熟悉sdk的朋友很清楚。
      

  6.   

    把两个工程加在 一起直接把dialog拖过去不就得了