Microsoft Visual C++ и MFC. Программирование для Win95 и WinNT


              

Файл ресурсов содержит строки описания


Файл ресурсов содержит строки описания только для первых восьми кнопок панели Style. Последние четыре кнопки не имеют соответствующих строковых ресурсов, поэтому для них подсказка не отображается:

if (!m_wndStyleBar.Create(this, WS_CHILD | WS_VISIBLE |

   CBRS_SIZE_FIXED | CBRS_TOP | CBRS_TOOLTIPS, ID_Style))

{

   // Ошибка при создании панели управления

   TRACE0("Failed to create toolbar\n");

   return -1;

}

После создания панели управления загружаем ресурс IDR_STYLE, описывающий кнопки панели управления:

if (!m_wndStyleBar.LoadToolBar(IDR_STYLE))

{

   // Ошибка при загрузке ресурса панели управления

   TRACE0("Failed to load toolbar\n");

   return -1;

}

Когда панель управления создана, вызываем метод SetWindowText, чтобы установить текст в ее заголовке:

m_wndStyleBar.SetWindowText("Style");  

Панель управления Style задумана нами как панель управления, которая все время отображается в отдельном мини-окне. Поэтому мы запрещаем пристывковывать панель управления Player к родительскому окну. Для этого вызываем метод EnableDocking, указав ему в качестве параметра нулевое значение:

m_wndStyleBar.EnableDocking(0);

Чтобы установить форму панели управления (разделить кнопки на несколько рядов) добавляем к стилям кнопок, завершающих каждый ряд, стиль TBBS_WRAPPED:

nIndex = m_wndStyleBar.CommandToIndex(ID_SUBSCRIPT);

nBarStyle =  m_wndStyleBar.GetButtonStyle(nIndex) |

             TBBS_WRAPPED;

m_wndStyleBar.SetButtonStyle(nIndex, nBarStyle);

 

nIndex = m_wndStyleBar.CommandToIndex(ID_TEXT_JUSTIFY);

nBarStyle =  m_wndStyleBar.GetButtonStyle(nIndex) |

             TBBS_WRAPPED;

m_wndStyleBar.SetButtonStyle(nIndex, nBarStyle);

Когда стили всех кнопок установлены, вызываем метод FloatControlBar главного окна приложения, чтобы вывести панель управления Style в отдельном мини-окне. В качестве координат, в которых отображается панель Style, произвольно выбираем точку (100,100):

CPoint pointStyleBar(100, 100);

FloatControlBar(&m_wndStyleBar, pointStyleBar);


Содержание  Назад  Вперед