Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как разместить Combo-box в Toolbar?

462
31 октября 2002 года
little brother
81 / / 18.10.2002
Не могу найти в литературе способ размещения combo-box'a (или других элементов управления) на панели Toolbar. Может кто-нибудь подскажет решение? Заранее благодарен!
2.1K
31 октября 2002 года
kmn
29 / / 09.10.2002
Цитата:
Originally posted by little brother
Не могу найти в литературе способ размещения combo-box'a (или других элементов управления) на панели Toolbar. Может кто-нибудь подскажет решение? Заранее благодарен!



#define CX_COMBOWIDTH 200
BOOL CMyToolBar::Create(CWnd *pParentWnd, DWORD dwStyle, UINT nID)
{
if (!CreateEx(pParentWnd, TBSTYLE_FLAT,
dwStyle, CRect(0, 0, 0, 0), nID))
return FALSE;

if (!LoadToolBar(IDR_TOOLBAR))
return FALSE;

int nIndex = CommandToIndex(ID_COMBOBOX);
SetButtonInfo(nIndex, ID_COMBOBOX, TBBS_SEPARATOR, CX_COMBOWIDTH);

CRect rect;
GetItemRect(nIndex, &rect);

m_wndComboBox.SetWindowPos(0, rect.left, rect.top+1, rect.Width(), CY_HIEGHT,
SWP_NOZORDER|SWP_NOACTIVATE|SWP_NOCOPYBITS);
m_wndComboBox.SetItemHeight(-1, rect.Height()-7);

m_wndComboBox.ShowWindow(SW_SHOW);

return TRUE;
}

int CMyToolBar::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CToolBar::OnCreate(lpCreateStruct) == -1)
return -1;

if (!m_wndComboBox.Create(WS_CHILD | CBS_DROPDOWN, CRect(0, 0, 0, 0), this, ID_COMBOBOX))
{
TRACE ("can't create combobox\r\n");
return -1;
}
m_wndComboBox.SetFont(GetFont());

return 0;
}


Посмотри пример в MSDN Samples/VC/MFC/OLE/WordPad.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог