在建立PropertySheet 对象的时候,有两种建立方法,分别为:
CPropertySheet( LPCTSTR pszCaption, CWnd *pParentWnd = NULL, UINT iSelectPage = 0 );CPropertySheet( UINT nIDCaption, CWnd *pParentWnd = NULL, UINT iSelectPage = 0 );
前一种方法还好说,直接用文字就可以了,另外一种方法是利用资源id号,我在字串表中新建立了一个id号,对应字符串,属性表单却无法弹出来,另外,利用已有的字符id,属性表单也无法弹出来,大家帮我看看,都是些小问题,辛苦各位了,我会好好的向大家学习.

解决方案 »

  1.   


    CPropertySheet sheet( MAKEINTRESOURCE(ID), NULL,  0 ); 
      

  2.   

    CPropertySheet sheet( MAKEINTRESOURCE(ID), NULL,  0 ); 
    =============
    应该是可以不加MAKEINTRESOURCE的,MSDN上有这样的例子。
    Example// Declare a CPropertySheet object titled "Simple PropertySheet".
    CPropertySheet dlgPropertySheet("Simple PropertySheet");// Declare a CPropertySheet object whose title is specified in the
    // IDS_PROPERTYSHEET_TITLE string resource, and the second page is
    // initially on top.  
    CPropertySheet dlgPropertySheet(IDS_PROPERTYSHEET_TITLE, this, 1);
      

  3.   

    几个方法:
    1、在构造CPropertySheet对象之前先用LoadString试试该ID对应的字符串是否能够Load成功,如果不成功,GetLastError看看什么问题。
    2、你说表单无法弹出来,有没有弹出什么提示,或者Output窗口有没有打印什么出来?可以给构造CPropertySheet对象的语句下个断点,然后调试,看看GetLastError返回什么。
    这样信息会逐步明确起来的。