C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 Внедрение элемента ComboBox в ToolBar (MFC) / Окна и интерфейс / Visual C++

Внедрении элемента ComboBox в ToolBar (MFC)
A: (cyberSpice)
Оригинальная ссылка: нету

////////////////////////////////////////////////////////////////////////
//  Добавление контрола ComboBox в ToolBar
//  Автор статьи: cyberSpice.
//  e-mail: alex@shuya.ipn.ru
//  www: http://shuya.ipn.ru/~cyberSpice
////////////////////////////////////////////////////////////////////////

//=====================================================================
// 1. Добавляем переменную-член в объявление класса:
   ...
   public:
       CComboBox m_wndCombo;
   ...
//=====================================================================
// 2. В редакторе ресурсов на контрол ToolBar наносим новую кнопку и
//    и устанавливаем ее ID в ID_BTN_FREEPLACE. Рисоват на ней ничего
//    не надо., т.к. мы будем ее использовать как место по контрол.

//=====================================================================
// 3. Добавляем в следущий код в OnCreate(LPCREATESTRUCT lpCreateStruct):

int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    ...

    int  index = 0;
    CRect rc;

    // Определяем позицию нашей кнопки-позиции на ToolBar'е.
    while (m_wndToolBar.GetItemID(index) != ID_BTN_FREEPLACE)
       index++;

    // Делаем нашу кнопку разделителем и устанавливаем ширину в 120.
    m_wndToolBar.SetButtonInfo(index, ID_BTN_FREEPLACE, TBBS_SEPARATOR, 120);
    // Получаем размеры этого, теперь уже, разделителя.
    m_wndToolBar.GetItemRect(index, &rc);

    // Корректируем размеры в расчете на будущий контрол ComboBox.
    rc.top += 2;
    rc.bottom += 200;

    // Создаем желаемый контрол на ToolBar'е
    DWORD dwStyle = WS_VISIBLE | WS_CHILD | CBS_AUTOHSCROLL |
                    CBS_DROPDOWNLIST | CBS_HASSTRINGS;
    if (!m_wndCombo.Create(dwStyle, rc, &m_wndToolBar, 1011))
    {
        TRACE0("Failed to create combo-box\n");
        return FALSE;
    }

    // Добавляем элементы данных в наш контрол.
    m_wndCombo.AddString("cyberSpice");
    m_wndCombo.AddString("Ozzy Osbourne");

    // Делаем первый элемент выбранным.
    m_wndCombo.SetCurSel(0);
}