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


Структура ATL_DRAWINFO

Содержит сведения, используемые для визуализации к разным целевым объектам, как принтер, метафайл или элемент управления ActiveX.

struct ATL_DRAWINFO{
   UINT cbSize;
   DWORD dwDrawAspect;
   LONG lindex;
   DVTARGETDEVICE* ptd;
   HDC hicTargetDev;
   HDC hdcDraw;
   LPCRECTL prcBounds;
   LPCRECTL prcWBounds;
   BOOL bOptimize;
   BOOL bZoomed;
   BOOL bRectInHimetric;
   SIZEL ZoomNum;
   SIZEL ZoomDen;
};

Члены

  • cbSize
    Размер структуры, в байтах.

  • dwDrawAspect
    Определяет, как целевой объект быть представленным.Представления могут включать содержимое, значок, эскиз или напечатанный документ.Список возможных значений см. в разделе DVASPECT и DVASPECT2.

  • lindex
    Часть целевого объекта, который представляет интерес для операции рисования.Его интерпретация зависит от значения в элементе dwDrawAspect.

  • ptd
    Указатель на структуру DVTARGETDEVICE, которая включает оптимизацию рисования в зависимости от определенного аспекта.Обратите внимание, что новые объекты и контейнеры, оптимизированная поддержка рисования интерфейсы поддерживает этот элемент.Старые объекты и контейнеров, которые не поддерживают оптимизированного рисования интерфейсы всегда определяют NULL для этого элемента.

  • hicTargetDev
    Контекст данных для целевого устройства указал на ptd, из которого объект может извлечь метрики устройства и проверяет возможностей устройства.Если ptdNULL, то объект должен игнорировать значение в элементе hicTargetDev.

  • hdcDraw
    Контекст устройства, на котором выполняется отрисовка.Для безоконного объекта, элемент hdcDraw в MM_TEXT режим сопоставления с его логические координаты соответствующих координатам, содержащий клиентского окна.Кроме того, контекст устройства должен находиться в том же состоянии, что обычно передача сообщением WM_PAINT.

  • prcBounds
    Указатель на структуру RECTL, определяющий прямоугольник в hdcDraw и в том, что объект должен быть рисования.Этот член наблюдает за размещение и растянуть объекта.Этот элемент должен быть NULL для рисования безоконный активный объект в- размещения.В каждой другой ситуации, NULL является недопустимым значением и должно привести к появлению кода ошибки E_INVALIDARG.Если контейнер передает значение, отличное от NULL к безоконному объекта, то объект должен обрабатывать аспект запрошенного задаваемые значения контекста устройства и прямоугольника.Контейнер может запросить это из безоконного объекта для визуализации секунду, представление, отличный от активного объекта или печати объект.

  • prcWBounds
    Если hdcDraw контекст устройства метафайла (см. GetDeviceCaps в Windows SDK), то это указатель на структуру RECTL, задающий ограничивающий прямоугольник в базовом метафайле.Структура прямоугольника содержит область окна и начало координат окна.Эти значения используются для рисования метафайлы.Прямоугольник, показанный prcBounds вложен в этого прямоугольника prcWBounds; они находятся в том же пространстве координат.

  • bOptimize
    Ненулевой если документ является оптимизированным элемента управления; в противном случае – значение 0.Если документ оптимизировать, то состояние контекста устройства автоматически восстановлено после завершения отрисовки.

  • bZoomed
    Ненулевой, если целевой объект имеет коэффициент масштабирования, то в противном случае – значение 0.Коэффициент масштабирования хранится в ZoomNum.

  • bRectInHimetric
    Ненулевой если измерения prcBounds в HIMETRIC, в противном случае – значение 0.

  • ZoomNum
    Ширина и высота прямоугольника, в котором объект визуализации.Коэффициент масштабирования по оси X (пропорции размер объекта естественных в свой текущий объем) целевого объекта значение ZoomNum.cx partitioned значение ZoomDen.cx.Коэффициент масштабирования по оси Y достигнут аналогичным образом.

  • ZoomDen
    Фактическая ширина и высота целевого объекта.

Заметки

Типичное потребление этой структуры будет возвращать сведения во время отрисовки целевого объекта.Например, можно извлечь значения из ATL_DRAWINFO в данной перегрузки CComControlBase::OnDrawAdvanced.

Эта структура содержит нужные сведения, используемые для визуализации представления объекта для целевого устройства.Предоставленные сведения могут использоваться в документе на экране, принтера или даже метафайлу.

Требования

Header: atlctl.h

См. также

Ссылки

IViewObject::Draw

CComControlBase::OnDrawAdvanced

Другие ресурсы

Структура библиотеки ATL