我在ATL生成的ActiveX控件中加入了MFC支持,现在我想要在控件的客户区生成一个文本框(CEdit),但是在创建函数中不知道如何加入父窗口指针
CRect rc(...);
CEdit* m_pEdit=new CEdit;
m_pEdit.Create(ES_LEFT|WS_CHILD|WS_VISIBLE,rc,/*此处要求CWnd*类型的父窗口指针*/,1500);
实在没办法,我试了在控件实现类加了一个CWnd*类型的变量,然后把它Attach到控件的窗口句柄上去(行家不要见笑!),然后再将这个变量传递给CEdit的Create函数,结果AfxGetInstanceHandle()这里报错。
请问如何解决???

解决方案 »

  1.   

    试着直接用API做http://www.dpspace.com
      

  2.   

    不要用MFC的控件类,用WTL的控件类来做。
      

  3.   

    to oiq:
    用API怎么做?我没做过,有没有参考的例子?
    to Analyst:
    到目前为止我还没用过WTL,有没有介绍这方面比较好资料?
      

  4.   

    这里有一些
    http://www.codeproject.com/wtl/
      

  5.   

    用API做多痛苦,你要自己写一个类似CEdit的类,或者你加入MFC的支持,或者用复合控件比较方便,WTL的文档在MSDN上没有,在国外都搞了好几年了,在国内也流行不起来,不知道为什么?
      

  6.   

    Create(_T("EDIT"),hWndParent, lpRect, szWindowName, dwStyle, dwExStyle, hMenu, lpCreateParam); 在MSDN 光盘上有一个ATLCON 的例子,还是值得看看的.