CWinAppEx - перегрузка LoadState () - PullRequest
0 голосов
/ 06 мая 2011

У меня есть приложение MFC MDI, которое досадно загружает предыдущее состояние панелей инструментов и т. Д. При его запуске.Я установил

 m_bSaveState = FALSE;

в конструкторе приложения ... но это не имело никакого эффекта.Поэтому я попытался перегрузить метод 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 голосов
/ 08 ноября 2011

Глядя на файл заголовка, функция, которую вы пытаетесь переопределить, не объявлена ​​виртуальной и не существует?!

Однако следующая функция является виртуальной:

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

Я сам не пробовал, но теоретически это должно работать.

...