|
|
发表于 2007-1-12 11:48:00
|
显示全部楼层
Re:用过MFC的请进~帮个小忙
搜到一段,其实我也不太懂。
修改视类的头文件,从而将所有对CView类的引用改名为你所想要的名称。本例中的类由CScrollView派生而来。通常,这个步骤包括对类的改变,视类将由如下方式派生而来:
class CMyView : public CScrollView
修改视类的实现文件,从而将所有对CView的引用改名为你所想要的名称。这包括将IMPLEMENT_DYNCREATE那一行的语句改为:
IMPLEMENT_DYNCREATE(CMyView, CScrollView)
将BEGIN_MESSAGE_MAP那一行的语句改为:
BEGIN_MESSAGE_MAP(CMyView, CScrollView)
并且将其他所有的CView改成CScrollView.
假如你修改的视图是由AppWizard生成的,那么就不需要作更多的修改了。而如果你在创建一个新视图,先在CWinApp::InitInstance()函数中找到对AddDocTemplate()函数的调用。AddDocTemplate()函数的第三个参数是RUNTIME_CLASS(CSomeView),用CMyView来代替CSomeView,就可以将当前视图改为新视图。在MDI应用程序中,你可以增加第二个AddDocTemplate()函数调用来使用多视图类型,将RUNTIME_CLASS(CSomeView)改为RUNTIME_CLASS (CMyView)。
要想获得更多的信息请参阅Q99562中相关文章《Switching Views in a Single Document Interface Program》 。 |
|