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


Функция MagSetColorEffect (magnification.h)

Задает матрицу преобразования цвета для элемента управления экранной лупы.

Синтаксис

BOOL MagSetColorEffect(
  [in] HWND            hwnd,
  [in] PMAGCOLOREFFECT pEffect
);

Параметры

[in] hwnd

Тип: HWND

Окно увеличения.

[in] pEffect

Тип: PMAGCOLOREFFECT

Матрица преобразования цвета или ЗНАЧЕНИЕ NULL для удаления текущего цветового эффекта, если таковой имеется.

Возвращаемое значение

Тип: BOOL

Возвращает значение TRUE в случае успешного выполнения или FALSE в противном случае.

Комментарии

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

Для этой функции требуются видеоадаптеры с поддержкой модели windows Display Driver Model (WDDM).

Примеры

В следующем примере задается матрица преобразования цвета, которая преобразует цвета, отображаемые в экранной лупой, в оттенки серого.

// Description:
//   Converts the colors displayed in the magnifier window to grayscale, or
//   returns the colors to normal.
// Parameters:
//   hwndMag - Handle of the magnifier control.
//   fInvert - TRUE to convert to grayscale, or FALSE for normal colors.
//
BOOL ConvertToGrayscale(HWND hwndMag, BOOL fConvert)
{
    // Convert the screen colors in the magnifier window.
    if (fConvert)
    {
        MAGCOLOREFFECT magEffectGrayscale = 
            {{ // MagEffectGrayscale
                {  0.3f,  0.3f,  0.3f,  0.0f,  0.0f },
                {  0.6f,  0.6f,  0.6f,  0.0f,  0.0f },
                {  0.1f,  0.1f,  0.1f,  0.0f,  0.0f },
                {  0.0f,  0.0f,  0.0f,  1.0f,  0.0f },
                {  0.0f,  0.0f,  0.0f,  0.0f,  1.0f } 
            }};

        return MagSetColorEffect(hwndMag, &magEffectGrayscale);
    }

    // Return the colors to normal.
    else
    {
        return MagSetColorEffect(hwndMag, NULL);
    }
}

Требования

   
Минимальная версия клиента Windows Vista [только классические приложения]
Минимальная версия сервера Windows Server 2008 [только классические приложения]
Целевая платформа Windows
Header magnification.h
Библиотека Magnification.lib
DLL Magnification.dll

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

MagGetColorEffect