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!