I am developing using VC++ 2010, have an MDI application using tabbed documents using the Ribbon Bar Office 2007 style Fluent UI.
I changed the
CMFCRibbonStatusBar to
CMFCStatusBar in the Main Frame class (because the extended panel text on the right disappeared when the frame size became smaller than the text - the
CMFCStatusBar status bar just truncates the text which is what I needed.)
I also have a status bar for the Child Frame that is a
CMFCStatusBar. This status bar is shown and hidden using
ShowWindow(SW_SHOW/SW_HIDE). After showing/hiding the status bar, it does not re-display in the child frame until you physically resize the main frame using the resize bars.
I have tried several things after the Show/Hide statement with no joy:
GetParentFrame()->RecalcLayout();
RecalcLayout(); (the child frame gives and unhandled exception because you are not supposed to resize the child frame when tabbed documents are used)
AfxGetMainWnd()->PostMessage(WM_SIZE, 0, 0);
AfxGetMainWnd()->Invalidate();
AfxGetMainWnd()->Redraw();
In the old days of VC++ 6.0 we could use CStatusBar and
ShowControlBar() which worked great! Unfortunately, the CStatusBar class does not work when you have the Ribbon Bar so we have to use
CMFCStatusBar. The MFC version does not have an equivalent to
ShowControlBar()...
Any suggestions would be helpful!