Поделиться через


Как оказывать поддержку пунктам обратного вызова

В этом разделе показано, как обеспечить поддержку элементов обратного вызова.

Что нужно знать

Технологии

Необходимые условия

  • C/C++
  • Программирование пользовательского интерфейса Windows

Инструкции

Если ваше приложение будет использовать элементы обратного вызова в элементе управления ComboBoxEx, оно должно быть готово обработать код уведомления CBEN_GETDISPINFO. Элемент управления ComboBoxEx отправляет это уведомление всякий раз, когда владельцу требуется предоставить сведения о конкретном элементе. Дополнительные сведения об элементах обратного вызова см. в разделе Элементы Обратного Вызова.

Следующая определяемая приложением функция обрабатывает CBEN_GETDISPINFO путем предоставления атрибутов для данного элемента. Обратите внимание, что он задает для маски член входящей структуры COMBOBOXEXITEM значение CBEIF_DI_SETITEM. Установка параметра маски на это значение заставляет элемент управления сохранять сведения об элементе, чтобы не нужно было запрашивать информацию при повторном запросе.

Полный пример

// DoItemCallback - Processes CBEN_GETDISPINFO by providing item
// attributes for a given callback item.

void WINAPI DoItemCallback(PNMCOMBOBOXEX pNMCBex)
{
    DWORD dwMask = pNMCBex->ceItem.mask;

    if(dwMask & CBEIF_TEXT)
    {
            // Insert code to provide item text.
    }

    if(dwMask & CBEIF_IMAGE) 
    {
        // Insert code to provide an item image index.
    }

    // Insert code to provide other callback information as desired.

    // Make the ComboBoxEx control hold onto the item information.
    pNMCBex->ceItem.mask = CBEIF_DI_SETITEM;
}

о элементах управления ComboBoxEx

Справочник по элементу управления ComboBoxEx

с помощью элементов управления ComboBoxEx

ComboBoxEx