Ribbon Status Bar

Fully implemented BCGControlBar Pro (MFC)

Not available BCGSuite (MFC)

Fully implemented BCGControlBar for .NET

The library includes an advanced, Office-style status bar control, which replaces the standard MFC status bar.

It allows you to quickly add any ribbon elements such as button, edit box, animation or progress bar to your status bar pane.

The status bar comes with the following features:

  • Status bar pane with icon, text and animation
  • Status bar pane progress bar
  • Status bar pane slider
  • Status bar pane buttons group

The ribbon status bar is divided into two logical groups: regular and extended. The extended group is located on the right side and has a special background color and look.

This control is fully customizable: the user can show/hide specific panes at runtime.

Ribbon Status Bar:

Ribbon Status Bar:

Ribbon Status Bar Customization:

Ribbon Status Bar Customization:

Sample code:

CBCGPRibbonStatusBar m_wndStatusBar;

// Create status bar:
if (!m_wndStatusBar.Create(this))
{
	TRACE0("Failed to create status bar\n");
	return FALSE;
}

// Add buttons:
m_wndStatusBar.AddElement(
	new CBCGPRibbonStatusBarPane(
		ID_STATUSBAR_PAGE, 
		_T("Page 1")), 
		_T("Formatted Page Number"));

m_wndStatusBar.AddElement(
	new CBCGPRibbonStatusBarPane(
		ID_STATUSBAR_LINE, 
		_T("Line 1")), 
		_T("Line Number"));

m_wndStatusBar.AddElement(
	new CBCGPRibbonStatusBarPane(
		ID_STATUSBAR_COLUMN, 
		_T("Column 1")), 
		_T("Column"));

m_wndStatusBar.AddSeparator();

// Add animation:
m_wndStatusBar.AddElement(
	new CBCGPRibbonStatusBarPane(
		ID_STATUSBAR_SPELL, _T(""), 
		(UINT) IDB_SPELL, 
		16, RGB(192, 192, 192), 
		hIconSpell),
		_T("Spelling and Grammar Check"));

m_wndStatusBar.AddSeparator();

// Add buttons group:
CBCGPRibbonButtonsGroup* pSBGroup = 
	new CBCGPRibbonButtonsGroup;

CBCGPToolBarImages images1;
images1.SetImageSize(CSize(14, 14));
images1.Load(IDB_LAYOUT);

pSBGroup->SetImages(&images1, NULL, NULL);
pSBGroup->SetID(ID_GROUP_SHORTCUTS);

pSBGroup->AddButton(
	new CBCGPRibbonButton(
		ID_PRINT_LAYOUT, _T(""), 0));
pSBGroup->AddButton(
	new CBCGPRibbonButton(
		ID_FULL_SCREEN_READING, _T(""), 1));
pSBGroup->AddButton(
	new CBCGPRibbonButton(
		ID_WEB_LAYOUT, _T(""), 2));
pSBGroup->AddButton(
	new CBCGPRibbonButton(
		ID_MASTER_DOCUMENT_TOOLS, _T(""), 3));
pSBGroup->AddButton(
	new CBCGPRibbonButton(
		ID_DRAFT, _T(""), 4));

m_wndStatusBar.AddExtendedElement(
	pSBGroup, _T("View Shortcuts"));

// Add slider:
CBCGPRibbonSlider* pSlider = 
	new CBCGPRibbonSlider(ID_STATUSBAR_ZOOM_SLIDER);
pSlider->SetZoomButtons();
pSlider->SetRange(0, 200);
pSlider->SetPos(100);

m_wndStatusBar.AddExtendedElement(
	pSlider, _T("Zoom Slider"));