Шаг 250 - Использование DialogBar

DialogBar - это Toolbar, в котором могут находиться любые элементы управления, если Вы помните, то на ToolBar могут находиться только картинки. Ниже приведен пример DialogBar.

250_1.gif (2191 b)

DialogBar - это диалог со специальными настройками такими как

Style - child
Border - none

Для использования DialogBar создан специальный класс CDialogBar.

Давайте создадим проект как AppWizard с именем TestBar как SDI и сразу Finish. Создадим диалоговое окно с указанными стилями и поместим на него EditBox, ComboBox и Button. Идентификатор этого диалога будет IDD_DIALOG1.

250_2.gif (3157 b)

Создаем ссылку на класс в классе рамки окна:

class CMainFrame : public CFrameWnd
{
......
public:

// Operations
public:
	CDialogBar m_wBar;
// Overrides
......
};

Теперь нам нужно описать идентификатор этой диалоговой панели. Сделаем это в файле Resource.h:

//{{NO_DEPENDENCIES}}
// Microsoft Developer Studio generated include file.
// Used by TestBar.rc
//
......
#define IDC_BUTTON1 1002

#define ID_MY_BAR 32772
......

После того как идентифкатор есть можно использовать функцию Create() для создания DialogBar, добавив код в функцию OnCreate() класса рамки.

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
	......
	EnableDocking(CBRS_ALIGN_ANY);
	DockControlBar(&m_wndToolBar);

	m_wBar.Create(this,IDD_DIALOG1,CBRS_TOP,ID_MY_BAR); 
	return 0;
}

Результат работы программы будет таким:

250_3.gif (2415 b)

Как видите получить панель иструментов с любым набором элементов управления довольно просто. Используйте DialogBar.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.