VC中怎么添加一个视图类,手动添加一个类时,有选择了继承一个VIEW的类,但是新建的类里面都是空的。 这样使用这个类时会出问题。问题补充:
cx.m_pNewViewClass=RUNTIME_CLASS(CMyView);
像这里面的CMyView类 是自定义的,手动加一个类 里面是没有内容的,它要怎么自动生成呢。
cx.m_pNewViewClass=RUNTIME_CLASS(CMyView);
像这里面的CMyView类 是自定义的,手动加一个类 里面是没有内容的,它要怎么自动生成呢。
需要在CMyView类中加入
DECLARE_DYNCREATE(CMyView) IMPLEMENT_DYNCREATE(CMyView, CView)和两个函数
CMyView* GetDocument() const;
void OnDraw(CDC* /*pDC*/);
像这里面的CMyView类 是自定义的,手动加一个类 里面是没有内容的,它要怎么自动生成呢。你这个写法只是得到了指向这个类中静态变量 CRUNTIMECLASS(实际上是一个结构体)的指针,要想生成该类实例,必须调用CRUNTIMECLASS结构体的CreateObject的函数来生成CMyView的实例。
之所以要做这些,是因为你是在mfc的结构里面使用派生之CView的类,那么你就必须遵循mfc的一些机制,
如果你是在C++中的话,那就在遵循c++机制的情况下随便你自己怎么用了。