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


Функция wglRealizeLayerPalette (wingdi.h)

Функция wglRealizeLayerPalette сопоставляет записи палитры из заданной плоскости слоя индекса цвета в физическую палитру или инициализирует палитру плоскости слоя RGBA.

Синтаксис

BOOL wglRealizeLayerPalette(
  HDC  unnamedParam1,
  int  unnamedParam2,
  BOOL unnamedParam3
);

Параметры

unnamedParam1

Указывает контекст устройства окна, палитра плоскости слоя которого должна быть реализована в физической палитре.

unnamedParam2

Указывает плоскость перекрытия или подложки. Положительные значения iLayerPlane определяют плоскости наложения, где 1 — это первая плоскость наложения на main плоскости, 2 — вторая плоскость наложения над первой плоскостью наложения и т. д. Отрицательные значения определяют плоскости подложки, где 1 — это первая плоскость под уровнем main, 2 — вторая плоскость под первой плоскостью подложки и т. д. Количество плоскостей перекрытия и подложки задается в элементе bReserved структуры PIXELFORMATDESCRIPTOR .

unnamedParam3

Указывает, должна ли палитра быть реализована в физической палитре. Если параметр bRealize имеет значение TRUE, записи палитры сопоставляются с физической палитрой, если она доступна. Если параметр bRealize имеет значение FALSE, записи палитры для плоскости слоя окна больше не нужны и могут быть освобождены для использования другим окном переднего плана.

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

Если функция выполнена успешно, возвращается значение TRUE, даже если bRealize имеет значение TRUE и физическая палитра недоступна. Если функция завершается сбоем или если формат пикселей не выбран, возвращается значение FALSE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Физическая палитра для плоскости слоя — это общий ресурс между окнами с плоскостями слоев. Когда несколько окон пытаются реализовать палитру для заданной физической плоскости слоя, одновременно реализуется только одна палитра. При вызове функции wglRealizeLayerPalette сначала всегда реализуется палитра слоев окна переднего плана.

При реализации палитры слоев окна ее записи палитры всегда сопоставляются один к одному с физической палитрой. В отличие от логических палитр GDI, при использовании wglRealizeLayerPalette нет сопоставления палитр слоев других окон с текущей физической палитрой.

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

Так как wglRealizeLayerPalette не реализует палитру плоскости main, используйте функции палитры GDI для реализации палитры main плоскости.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h
Библиотека Opengl32.lib
DLL Opengl32.dll

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

LAYERPLANEDESCRIPTOR

OpenGL в Windows

PIXELFORMATDESCRIPTOR

Функции WGL

wglDescribeLayerPlane

wglGetLayerPaletteEntries

wglRealizeLayerPalette

wglSetLayerPaletteEntries