Есть ли простой способ исключить панель управления из состояния стыковки, сохраненного в окне кадра MFC?
У нас есть панель док-станции, видимость которой контролируется каким-либо другим состоянием, а загрузка состояния док-станции мешает требуемому поведению.
Замените их и верните FALSE
virtual BOOL LoadState(LPCTSTR lpszProfileName = NULL, int nIndex = -1, UINT uiID = (UINT) -1); virtual BOOL SaveState(LPCTSTR lpszProfileName = NULL, int nIndex = -1, UINT uiID = (UINT) -1);
У вас будет возможность закрепить / отстыковать определенный бар после вашего вызова «LoadBarState», используя DockControlBar или FloatControlBar (в зависимости от другого состояние ).
Другой (более хакерский) вариант - удалить конкретный раздел реестра с настройками после вашего вызова «SaveBarState». Состояние док-станции сохраняется здесь:
HKLM \ Software \ НазваниеКомпании \ ApplicationName
Там есть ключ для каждой панели управления.