Collapsible, resizable and dockable XP style control bar






3.38/5 (25 votes)
Sep 23, 2003

198599

6635
Collapsible, resizable and dockable XP style control bar
Introduction
This class can be used to create a collapsible, resizable and dockable XP style control bar with very few lines of code.
The following files must be added to your project.
- CollapsiblePanel.h
- CollapsiblePanel.cpp
Resources
- An empty dialog to define the initial control bar size.
- A bitmap image for the logo of the button (if required).
- A bitmap image for the expand icon of the button.
- A dialog that will be displayed by the collapsible button.
Sample code
In your CMainFrame
header file, define a variable of the type CCollapsiblePanel
:
CCollapsiblePanel m_wndCollapsiblePanel;
In the CMainFrame::OnCreate()
method, create the CDialog
corresponding to the panels of the collapsible button :
CDialog* m_wndView1 = new CDialogButton1();
Set the Collapsible control bar (dockable, color and bitmaps.) :
m_wndCollapsiblePanel.CreateTheContainer(this, IDD_PANEL, true); m_wndCollapsiblePanel.SetTheBkColor(RGB(100, 149, 237)); //m_wndCollapsiblePanel.SetDefaultSystemColor(); m_wndCollapsiblePanel.SetExpandBitmap(IDB_BITMAP_EXPAND);
Indicate if the program uses a toolbar or a status bar.
m_wndCollapsiblePanel.SetTheControlBar(&m_wndToolBar, &m_wndStatusBar);
Finally append the buttons.
m_wndCollapsiblePanel.AppendButton("Text Button 1", IDB_BITMAP_DW, m_wndView1, IDD_DIALOG_BUTTON1); m_wndCollapsiblePanel.AppendButton("Text Button 2", IDB_BITMAP_FW, m_wndView2, IDD_DIALOG_BUTTON2); m_wndCollapsiblePanel.AppendButton("text Button 3", NULL, NULL, NULL);