CWinAppEx - 重载LoadState()

时间:2011-05-06 01:16:09

标签: mfc load state mdi

我有一个MFC MDI应用程序,当我运行它时会烦人地加载以前的工具栏状态等。我已经设置了

 m_bSaveState = FALSE;
在App构造函数中

但它没有任何效果。所以我试图重载LoadState()方法,如:

    // added this to the MainApp.h file
virtual BOOL LoadState(CWnd* pFrame, LPCTSTR lpszSectionName = NULL );

和......

 // added the following to the MainApp.cpp
 BOOL CDrumGenMDIApp::LoadState (CWnd* pFrame, LPCTSTR lpszSectionName )
{
// do nothing to pre-load the state from the Registry
return TRUE;
 }

...但是这种方法似乎永远不会被调用。当系统加载Frames时我很确定它正在调用一些LoadState()的配置文件......但是如何让它调用我的重载方法?

THX

1 个答案:

答案 0 :(得分:0)

查看头文件,您尝试覆盖的函数未声明为虚拟,也不存在?!

但是以下功能是虚拟的:

  virtual BOOL LoadState(LPCTSTR lpszSectionName = NULL, CFrameImpl* pFrameImpl = NULL);

我自己没有尝试过,但它应该在理论上有效。