Класс CBaseWindow

[Функция, связанная с этой страницей DirectShow, является устаревшей функцией. Он был заменен MediaPlayer, IMFMediaEngine, и аудио/ видео захвата в Media Foundation. Эти функции оптимизированы для Windows 10 и Windows 11. Корпорация Майкрософт настоятельно рекомендует использовать в новом коде MediaPlayer, IMFMediaEngine и аудио/видеозахват в Media Foundation вместо DirectShow, когда это возможно. Корпорация Майкрософт предлагает переписать существующий код, в котором используются устаревшие API, чтобы по возможности использовать новые API.]

Класс CBaseWindow является базовым классом для управления окнами. Отрисовщики видео могут использовать этот класс для создания видеоокна. Чтобы использовать этот класс, создайте производный класс, наследующий от CBaseWindow. В производном классе:

Перед использованием экземпляра производного класса вызовите метод CBaseWindow::P repareWindow .

Защищенные переменные-члены Описание
m_hInstance Дескриптор экземпляра модуля.
m_hwnd Дескриптор окна объекта.
m_hdc Обработка контекста устройства окна.
m_Width Ширина клиентской области в пикселях.
m_Height Высота клиентской области в пикселях.
m_bActivated Флаг, указывающий, было ли активировано окно.
m_pClassName Статическая строка, содержащая имя класса окна.
m_ClassStyles Стили классов для окна.
m_WindowStyles Стили окон для окна.
m_WindowStylesEx Расширенные стили окна.
m_ShowStageMessage Личное сообщение, которое выводит окно на передний план.
m_ShowStageTop Личное сообщение, задающее стиль окна WS_EX_TOPMOST.
m_RealizePalette Личное сообщение, которое реализует палитру.
m_MemoryDC Дескриптор контекста устройства памяти.
m_hPalette Дескриптор палитры окна.
m_bNoRealize Флаг, указывающий, должно ли окно реализовать свою палитру.
m_bBackground Флаг, указывающий, должна ли палитра быть фоновой палитрой.
m_bRealizing Флаг, указывающий, реализуется ли новая палитра.
m_WindowLock Критический раздел для сериализации доступа к объекту.
m_bDoGetDC Флаг, указывающий, следует ли извлекать контекст устройства.
m_bDoPostToDestroy Флаг, указывающий, публикует ли окно или отправляет сообщение об уничтожении.
Защищенные методы Описание
OnPaletteChange Обрабатывает сообщения об изменении палитры. Виртуальной.
Открытые методы Описание
CBaseWindow Метод конструктора.
DoneWithWindow Уничтожает окно. Виртуальной.
PrepareWindow Создает окно. Виртуальной.
ИнактивацияWindow Деактивирует окно. Виртуальной.
ActivateWindow Размер окна в соответствии с требованиями производного класса. Виртуальной.
Onsize Обрабатывает WM_SIZE сообщения. Виртуальной.
OnClose Обрабатывает WM_CLOSE сообщения. Виртуальной.
GetDefaultRect Извлекает размер клиентской области по умолчанию. Виртуальной.
UninitialiseWindow Освобождает ресурсы окна. Виртуальной.
InitialiseWindow Инициализирует окно. Виртуальной.
CompleteConnect Уведомляет окно о том, что входной контакт отрисовщика подключен.
DoCreateWindow Создает окно.
PerformanceAlignWindow Выравнивает окно по границе DWORD для достижения максимальной производительности.
DoShowWindow Задает состояние отображения окна.
PaintWindow Вызывает перерисовку окна.
DoSetWindowForeground Выводит окно на передний план.
SetPalette Устанавливает палитру для окна. Виртуальной.
SetRealize Указывает, реализует ли окно палитры.
DoRealisePalette Реализует текущую палитру окна. Виртуальной.
Возможно,EatMessage Позволяет производной классу пересылать сообщения в другое окно. Виртуальной.
GetWindowWidth Извлекает текущую ширину окна.
GetWindowHeight Извлекает текущую высоту окна.
GetWindowHWND Извлекает дескриптор в окно.
GetMemoryHDC Извлекает дескриптор в контекст устройства памяти.
GetWindowHDC Извлекает дескриптор для контекста устройства окна.
OnReceiveMessage Обрабатывает сообщения окна. Виртуальной.
UnsetPalette Удаляет текущую палитру окна и восстанавливает системную палитру по умолчанию.
Чистые виртуальные методы Описание
GetClassWindowStyles Извлекает стили класса и стили окон окна.

Требования

Требование Значение
Заголовок
Winutil.h (включая Streams.h)
Библиотека
Strmbase.lib (розничные сборки);
Strmbasd.lib (отладочные сборки)

См. также раздел

Класс CDrawImage

Класс CBaseControlWindow