如果要动态创建一个对话框,怎么设置或者CreateIndirect之后怎么知道这个对话框的资源ID/名称呢?

解决方案 »

  1.   

    DLGTEMPLATE不是资源,当然不会有资源ID或者名称。资源ID或者名称是用来从程序文件中加载资源的,最终目的就是得到DLGTEMPLATE结构的数据。
      

  2.   

    CDialog::SetDlgCtrlID()可以设定用自定义模板生成的对话框的ID,效果等同于资源id
      

  3.   

    好像不行啊,顶级窗口不能使用该函数。对话框里面的控件是可以这样用的,而控件的话也不需要这样指定,DLGITEMTEMPLATE 里面就可以设定了。
      

  4.   

    前面已经说过了,资源ID是用来查找和加载资源的,与控件或窗口ID是完全不同的概念。