VC6.0Class Wizard不显示类的问题

先解决Class Wizard中不能显示外来的文件包含的类的问题:

实际上 Class Wizard的目的不是显示类,而是让编程者能方便得添加/删除MFC相关的成员函数或变量。要改变类的内容就要改变源文件,但是应该在什么地方修改,ClassWizard可没有本事处理任意一个手工编写的.cpp .h对。它的办法是用类似
  //{{AFX_MSG(类名)
//}}AFX_MSG
这样的注释来告诉自己应该把(消息映射函数)加在什么地方。类似的还有
//{{AFX_MSG_MAP(类名)
//}}AFX_MSG_MAP

//{{AFX_DATA(类名)
//}}AFX_DATA

//{{AFX_VIRTUAL(类名)
//}}AFX_VIRTUAL
等等

知道了这一点,为什么有的类Class Wizard不显示就容易理解了。
在我们自己的文件中,没有这样的注释的话,ClassWizard根本就不知道该如何处理对这种文件的修改。既然不能修改,索性就不显示算了。:P

如果要想ClassWizard显示,只要自己加上这些注释就好了。以我自己的经验,只要在.h中加入
  //{{AFX_MSG(类名)
//}}AFX_MSG
在.cpp中加入
//{{AFX_MSG_MAP(类名)
//}}AFX_MSG_MAP
这个类就能在ClassWizard中显示了。但是这是你能在ClassWizard中的Messages列表中能看到的只有窗口消息和通知消息而已,因为ClassWizard只找到了处理消息处理函数的地方吧 :P  
至于怎么让它跟别的MFC产生的类完全一样,我还不清楚,请高手赐教。


===================================================================
再说,从非MFC基类的继承问题:

要产生一个类,并尽量利用VC的工具,最好的办法就是在ClassWizard中新建这个类。但是如果这个类不是基于MFC基类的话怎么创建哪?看下边:
1.用ClassWizard创建一个类,这个类从一个MFC基类继承而来,这个MFC基类最好是你真正要继承的那个类的父类,或父类的父类的父类...
2.修改相应的.cpp .h文件,把基类的名字改成你真正要的那个
3.ClassWizard可以使用了,有不正常的,铲掉.clw文件,重新打开ClassWizard就可以了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值