可视化继承的实现

基类的实现

1、新建基类窗口,资源为IDD_BASE,CBase.Cpp和CBase.h。
2、修改基类构造函数,增加一个默认参数ID。

CBase(UINT ID = NULL,CWnd *pParent = NULL);

CBase::CBase(UINT ID
/*= NULL*/),CWnd *pParent /*= NULL*/)
:CDialog(ID,pParent )
{

}

3、注释头文件中的IDD_BASE一行。

//enum{IDD = IDD_BASE};

4、实现基类样式,如背景等。

继承类的实现

1、新建继承类,资源IDD_DERIVED,CDerived.cpp和CDerived.h。
2、CDerived.h中包含基类头文件,修改继承类。

#include "Base.h"

class CDerived : Public CBase
{

....
}

3、将CDerived.cpp中的CDialog全部换成CBase。
4、CDerived.cpp的OnPaint()中本身的CPaintDC dc(this)注释,并加上CBase::OnPaint();。

作者: 17Look8   发布时间: 2011-05-27