|
| БЕСПЛАТНАЯ ежедневная online лотерея! Выигрывай каждый день БЕСПЛАТНО! |
|
|
SetSystemPaletteUse
The SetSystemPaletteUse function allows an application to specify whether the system palette contains 2 or 20 static colors. The default system palette contains 20 static colors. (Static colors cannot be changed when an application realizes a logical palette.)
UINT SetSystemPaletteUse(
HDC hdc, // handle of device context UINT uUsage // palette-usage flag );
Parameters
hdc
Identifies the device context. This device context must refer to a device that supports color palettes.
uUsage
Specifies the new use of the system palette. This parameter can be one of the following values:
Value Meaning SYSPAL_NOSTATIC The system palette contains two static colors (black and white). SYSPAL_STATIC The system palette contains static colors that will not change when an application realizes its logical palette.
Return Values
If the function succeeds, the return value is the previous usage of the system palette (it can be either SYSPAL_NOSTATIC or SYSPAL_STATIC). If the function fails, the return value is SYSPAL_ERROR. To get extended error information, call GetLastError.
Remarks
An application can determine whether a device supports palette operations by calling the GetDeviceCaps function and specifying the RASTERCAPS constant. When an application window moves to the foreground and the SYSPAL_NOSTATIC value is set, the application must call the GetSysColor function to save the current system colors setting. It must also call SetSysColors to set reasonable values using only black and white. When the application returns to the background or terminates, the previous system colors must be restored.
If the function returns SYSPAL_ERROR, the specified device context is invalid or does not support color palettes. An application must call this function only when its window is maximized and has the input focus. If an application calls SetSystemPaletteUse with uUsage set to SYSPAL_NOSTATIC, Windows continues to set aside two entries in the system palette for pure white and pure black, respectively. After calling this function with uUsage set to SYSPAL_NOSTATIC, an application must take the following steps:
1. Realize the logical palette. 2. Call the GetSysColor function to save the current system-color settings. 3. Call the SetSysColors function to set the system colors to reasonable values using black and white. For example, adjacent or overlapping items (such as window frames and borders) should be set to black and white, respectively. 4. Send the WM_SYSCOLORCHANGE message to other top-level windows to allow them to be redrawn with the new system colors.
When the application's window loses focus or closes, the application must perform the following steps:
1. Call SetSystemPaletteUse with the uUsage parameter set to SYSPAL_STATIC. 2. Realize the logical palette. 3. Restore the system colors to their previous values. 4. Send the WM_SYSCOLORCHANGE message.
See Also
GetDeviceCaps, GetSysColor, SetSysColors, GetSystemPaletteUse
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
| Пригласи друзей и счет твоего мобильника всегда будет положительным! |
SetSystemPaletteUse
Функция SetSystemPaletteUse позволяет приложение, чтобы определять содержит системная палитра 2 или 20 статических цвета. Встроенная системная палитра содержит 20 статических цветов. (Статические цвета не могут быть измениться когда приложение реализовывает логический palette.)
UINT SetSystemPaletteUse(
HDC hdc, // РУЧКА устройства контекстного uUsage / UINT/ палитра-использование флага );
Параметры
hdc
Идентифицирует контекст устройства. Этот контекст устройства должен ссылаться на устройство, которое поддерживает цветные палитры.
uUsage
Определяет новое использование системной палитры. Этот параметр может быть одним из следующего величин:
Значение Величины SYSPAL_NOSTATIC системная палитра содержит два статических цвета (черного и белого). SYSPAL_STATIC системная палитра содержит статические цвета, которые не изменятся когда приложение реализовывает свою логическую палитру.
Обратные Величины
Если функция добивается успеха, обратная величина является предшествующим использованием системной палитры (это может быть или SYSPAL_NOSTATIC или SYSPAL_STATIC). Если функция терпит неудачу, обратная величина - SYSPAL_ERROR. Для того, чтобы расширять информацию ошибки, назовите GetLastError.
Замечания
Приложение может определить поддерживает устройство операции палитры вызывая функцию GetDeviceCaps и определяя константу RASTERCAPS. Когда прикладное окно перемещает на передний план и величина SYSPAL_NOSTATIC установлена, приложение должно назвать функцию GetSysColor, чтобы сохранять текущим системным цветам установку. Это должно также назвать SetSysColors, чтобы устанавливать разумные величины, использовавшие только черными и белыми. Когда приложение возвращается на фон или завершается, предшествующая система окрашивает должно быть восстановлено.
Если функция возвращает SYSPAL_ERROR, определенный контекст устройства недействителен или не поддерживает цветные палитры. Приложение должно назвать эту функцию только когда окно расширено и имеет входной фокус. Если приложение называет SetSystemPaletteUse с uUsage установленным на SYSPAL_NOSTATIC, Windows остается отклонять два данных в системной палитре для чистого белого и чистого черного, соответственно. После вызова этой функции с uUsage установленным на SYSPAL_NOSTATIC, приложение должно предпринять следующее мер:
1. Реализуйте логическую палитру. 2. Назовите функцию GetSysColor, чтобы сохранять текущие системные-цветные установочные параметры. 3. Назовите функцию SetSysColors, чтобы устанавливать системные цвета в разумные величины, использовавшие черными и белыми. Например, смежные или перекрывающие пункты (как например, фреймы окна и границ), должны быть установлены на черный и белый, соответственно. 4. Пошлите сообщение WM_SYSCOLORCHANGE в другое окно верхнего уровня, чтобы позволять им, чтобы быть redrawn с новыми системными цветами.
Когда прикладное окно теряет фокус или закрывает, приложение должно выполнить следующее шагов:
1. Вызовите SetSystemPaletteUse с параметром uUsage установленным на SYSPAL_STATIC. 2. Реализуйте логическую палитру. 3. Восстановите системные цвета в их предшествующие величины. 4. Пошлите сообщение WM_SYSCOLORCHANGE.
Смотри Также
GetDeviceCaps, GetSysColor, SetSysColors, GetSystemPaletteUse
|
|
|
|
| |