MFC第三方控件的使用需要小心

最近用了几个MFC(VC6)的第三方控件,包括一个可以调整颜色,大小,字体等等的List控件,还有一个可以动态增减属性页的Tab控件。

要小心搞清这些控件的使用方法。这两个控件的使用方法就有不同。那个List控件就要求先用MFC自己的List控件做布局,只是把control对象替换为改进过的List的control类。因为这个改进类是继承于标准List控件的。所以控件绑定的窗口还是标准List控件的窗口。

而那个新Tab控件就不同,不需事先分配标准Tab控件,而是直接实例化新控件对象,然后调用它的Create函数创建自己的窗口。如果采用上一段描述的方式来使用该Tab控件,就会产生断言失败(Assert Failure)。失败发生在Create函数中,当它试图为该Tab控件创建新窗口来绑定时,发现该对象已经有窗口了(布局时标准Tab控件的窗口),导致断言错。

通过这个错误,我在调试的时候也进一步了解到MFC对窗口类(CWnd)的处理方式,控件和对话框都继承自CWnd类。CWnd以及窗口句柄(HANDLE m_hWnd)的区别和联系体现了MFC如何封装windows窗口对象。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值