这样的对话框需要手工创建所有控件,我有一个浏览选择目录的对话框,只有h cpp,没有rc若需要, 给Email

解决方案 »

  1.   

    me too
    [email protected]
      

  2.   

    可以在内存中创建对话框资源,比用对话框编辑器创建要灵活,不过当然更难,参见SDK
      

  3.   

    肯定可以做的,想想没有资源编辑器的时候,难道就不能弄一个对话框出来?用SDK是一种方法,建议看看Windows编程的书.
      

  4.   

    dialog就是一个window,button等等也是
    统统都用CreateWindow生成,就是需要设置一下风格
    以前在windows 3.1的时候干过
    太早了,忘光了,呵呵
      

  5.   

    只有在内存中创建对话框资源了。
    我想还是利用好现有的资源好,如果纯用SDK手工找控件坐标,那还有什么效率
    查看对话框CPP文件,找到所有类型的控件。用VC对话框资源编辑器来按这些控件做出资源。将做好的资源文件RC中相应数据拷贝出来,将这些数据填充DLGTEMPLATE与DLGITEMTEMPLATE两个结构,将结构存在内容中,做为模板待用
    使用
    BOOL InitModalIndirect( HGLOBAL hDialogTemplate, CWnd* pParentWnd = NULL );
    函数来从内存对话框模板生成对话框
    这样会方便很多,我只是说说,其实我是个菜鸟,呵呵,好象这个方法我不说别人也都知道
      

  6.   

    IDC_STATIC_CONTAINER :Static 控件,用于放子对话框
    IDD_YOUR_DIALOGID: CDialog 控件,子对话框
    在父对话框里OnInitDialog()
    中作:
    CRect rc;
    GetDlgItem(IDC_STATIC_CONTAINER)->GetWindowRect(&rc);
    ScreenToClient(&rc);
    CDialog dlg;
    dlg.Create(IDD_YOUR_DIALOGID);
    dlg.MoveWindow(rc);
    dlg.ShowWindow(SW_SHOW);
      

  7.   

    to cn2000
    不好意思
    本人受人之托推一个贴子,我已无能为力,恳请多关注一下
    http://www.csdn.net/expert/Topic/256/256473.shtm
    去看看吧
      

  8.   

    看看这合你的吗?
    http://codeguru.earthweb.com/dialog/multidlg.html啸峰工作室
    http://roaringwind.best.163.com
    串口通迅(编程源码)、串口调试助手、端口网络通信技术,VC/C编程,移动机器人控制相关技术,Matlab仿真及数据处理