Função SetSystemPaletteUse (wingdi.h)
A função SetSystemPaletteUse permite que um aplicativo especifique se a paleta do sistema contém 2 ou 20 cores estáticas. A paleta do sistema padrão contém 20 cores estáticas. (As cores estáticas não podem ser alteradas quando um aplicativo percebe uma paleta lógica.)
Sintaxe
UINT SetSystemPaletteUse(
[in] HDC hdc,
[in] UINT use
);
Parâmetros
[in] hdc
Um identificador para o contexto do dispositivo. Esse contexto de dispositivo deve se referir a um dispositivo que dê suporte a paletas de cores.
[in] use
O novo uso da paleta do sistema. Esse parâmetro pode usar um dos valores a seguir.
Valor retornado
Se a função for bem-sucedida, o valor retornado será a paleta do sistema anterior. Pode ser SYSPAL_NOSTATIC, SYSPAL_NOSTATIC256 ou SYSPAL_STATIC.
Se a função falhar, o valor retornado será SYSPAL_ERROR.
Comentários
Um aplicativo pode determinar se um dispositivo dá suporte a operações de paleta chamando a função GetDeviceCaps e especificando a constante RASTERCAPS.
Quando uma janela do aplicativo é movida para o primeiro plano e o valor SYSPAL_NOSTATIC é definido, o aplicativo deve chamar a função GetSysColor para salvar a configuração de cores do sistema atual. Ele também deve chamar SetSysColors para definir valores razoáveis usando apenas preto e branco. Quando o aplicativo retorna à tela de fundo ou termina, as cores anteriores do sistema devem ser restauradas.
Se a função retornar SYSPAL_ERROR, o contexto de dispositivo especificado será inválido ou não oferecerá suporte a paletas de cores.
Um aplicativo deve chamar essa função somente quando sua janela for maximizada e tiver o foco de entrada.
Se um aplicativo chamar SetSystemPaletteUse com uUsage definido como SYSPAL_NOSTATIC, o sistema continuará reservando duas entradas na paleta do sistema para branco puro e preto puro, respectivamente.
Depois de chamar essa função com uUsage definido como SYSPAL_NOSTATIC, um aplicativo deve executar as seguintes etapas:
- Realize a paleta lógica.
- Chame a função GetSysColor para salvar as configurações atuais de cor do sistema.
- Chame a função SetSysColors para definir as cores do sistema para valores razoáveis usando preto e branco. Por exemplo, itens adjacentes ou sobrepostos (como quadros de janela e bordas) devem ser definidos como preto e branco, respectivamente.
- Envie a mensagem WM_SYSCOLORCHANGE para outras janelas de nível superior para permitir que elas sejam redesenhadas com as novas cores do sistema.
- Chame SetSystemPaletteUse com o parâmetro uUsage definido como SYSPAL_STATIC.
- Realize a paleta lógica.
- Restaure as cores do sistema para seus valores anteriores.
- Envie a mensagem WM_SYSCOLORCHANGE .
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | wingdi.h (inclua Windows.h) |
Biblioteca | Gdi32.lib |
DLL | Gdi32.dll |