Compartilhar via


SystemEvents.PaletteChanged Evento

Definição

Ocorre quando o usuário muda para um aplicativo que usa uma paleta diferente.

public:
 static event EventHandler ^ PaletteChanged;
public static event EventHandler PaletteChanged;
public static event EventHandler? PaletteChanged;
member this.PaletteChanged : EventHandler 
Public Shared Custom Event PaletteChanged As EventHandler 

Tipo de evento

Exceções

Não há suporte para notificações de eventos do sistema no contexto atual. Os processos do servidor, por exemplo, podem não dar suporte a notificações de eventos globais do sistema.

A tentativa de criar um thread de janela de eventos do sistema não foi bem-sucedida.

Exemplos

O exemplo de código a seguir demonstra como monitorar o PaletteChanged evento. Este exemplo de código faz parte de um exemplo maior fornecido para a SystemEvents classe .

int main()
{
    // Set the SystemEvents class to receive event notification
    // when a user preference changes, the palette changes, or
    // when display settings change.
    SystemEvents::UserPreferenceChanging += gcnew
        UserPreferenceChangingEventHandler(
        SystemEvents_UserPreferenceChanging);
    SystemEvents::PaletteChanged += gcnew
        EventHandler(SystemEvents_PaletteChanged);
    SystemEvents::DisplaySettingsChanged += gcnew
        EventHandler(SystemEvents_DisplaySettingsChanged);

    // For demonstration purposes, this application sits idle
    // waiting for events.
    Console::WriteLine("This application is waiting for system events.");
    Console::WriteLine("Press <Enter> to terminate this application.");
    Console::ReadLine();
}
static void Main() 
{         
    // Set the SystemEvents class to receive event notification when a user 
    // preference changes, the palette changes, or when display settings change.
    SystemEvents.UserPreferenceChanging += new 
        UserPreferenceChangingEventHandler(SystemEvents_UserPreferenceChanging);
    SystemEvents.PaletteChanged += new 
        EventHandler(SystemEvents_PaletteChanged);
    SystemEvents.DisplaySettingsChanged += new 
        EventHandler(SystemEvents_DisplaySettingsChanged);        

    // For demonstration purposes, this application sits idle waiting for events.
    Console.WriteLine("This application is waiting for system events.");
    Console.WriteLine("Press <Enter> to terminate this application.");
    Console.ReadLine();
}
'Set the SystemEvents class to receive event notification 
'when a user preference changes, the palette changes, or 
'when display settings change.
AddHandler SystemEvents.UserPreferenceChanging, _
AddressOf SystemEvents_UserPreferenceChanging

AddHandler SystemEvents.PaletteChanged, _
AddressOf SystemEvents_PaletteChanged

AddHandler SystemEvents.DisplaySettingsChanged, _
AddressOf SystemEvents_DisplaySettingsChanged

Comentários

Observação

Esse evento só será gerado se a bomba de mensagem estiver em execução. Em um serviço Windows, a menos que um formulário oculto seja usado ou a bomba de mensagem tenha sido iniciada manualmente, esse evento não será gerado. Para obter um exemplo de código que mostra como lidar com eventos do sistema usando um formulário oculto em um serviço Windows, consulte a SystemEvents classe .

Cuidado

Como esse é um evento estático, você deve desanexar os manipuladores de eventos quando o aplicativo for descartado ou ocorrerá vazamentos de memória.

Aplica-se a