按照vc++技术内幕那本书 136页的那个例子用vs2008做的运行完窗口还是原来的打开文件的窗口 除了标题被换掉
检查没有什么不一样的地方除了其中有一段是要把组合框id 改成  stc32=0x45f 但是我改这个id 改完会变回 stc32     后面的=0x45f会自己消失....
能运行但是没效果。。不知道该怎么办了 求助。。

解决方案 »

  1.   

    http://www.vckbase.com/document/viewdoc.asp?id=417
      

  2.   

    我设置的过程是对话框 id 设为IDD_SPECIAL 属性style 设为child  border设为none clip sibling设为true visible 设为true加入一个 group box  id 设为 stc32=0x045f  在资源符号里查看已经设置成功然后双击对话框 创建了CSpecialFileDialog类 派生自CDialog然后把头文件和cpp中的所有CDialog 改为CFileDialogSpecialFileDialog.h中构造函数CSpecialFileDialog(BOOL bOpenFileDialog,
    LPCTSTR lpszDefExt=NULL,
    LPCTSTR lpszFileName=NULL,
    DWORD dwFlags=OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
    LPCTSTR lpszFilter =NULL,
    CWnd* pParent = NULL);  SpecialFileDialog.cpp中构造函数
    CSpecialFileDialog::CSpecialFileDialog(BOOL bOpenfileDialog,
       LPCTSTR lpszDefExt,
       LPCTSTR lpszfileName,
       DWORD dwFlags,
       LPCTSTR lpszFilter,
    CWnd* pParent):CFileDialog(bOpenfileDialog,lpszDefExt,lpszfileName,
    dwFlags,lpszFilter,pParent)
    {
    m_ofn.Flags=m_ofn.Flags|OFN_ENABLETEMPLATE;
    m_ofn.lpTemplateName=MAKEINTRESOURCE(IDD_FILESPECIAL);
    m_ofn.lpstrTitle=TEXT("Delete File");
    m_bDeleteAll=FALSE;}调用部分CSpecialFileDialog dlgFile(TRUE,NULL,TEXT("*.obj"));
    dlgFile.DoModal();
    后面的代码都是改控件caption  删除文件等等到这步应该能改变对话框  但是对话框还是没变化帮我看看
      

  3.   

    http://www.vckbase.com/document/viewdoc.asp?id=417
    这个是用辅助类实现的....帮我看看我模仿C++技术内幕的那种方法哪出错了...