Fazendo um ícone piscar para chamar o usuário

 

Uma forma interessante de chamar a atenção do usuário para a aplicação, quando esta estiver aguardando uma resposta, é fazer o ícone do formulário piscar na taskbar. Isso é algo que podemos fazer via API do windows. Como no .NET não temos uma função para realizar diretamente esta tarefa, podemos continuar realizando a chamada para a API mesmo através do .NET.

Exemplo:

 

Private Declare Function FlashWindow Lib "user32" Alias "FlashWindow" (ByVal hwnd As _

IntPtr, ByVal bInvert As Integer) As Integer

 

Podemos utilizar um objeto timer para controlar o piscar do ícone. Assim sendo no momento que desejarmos chamar a atenção do usuário disparamos o timer com Timer.start. No evento do timer teremos o seguinte código:

 

Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles Timer1.Tick

FlashWindow(Me.Handle, 1)

End Sub

 

No Activate do formulário podemos desativar o efeito de piscar e o timer, da seguinte forma :

 

Timer1.Stop();

FlashWindow(this.Handle, 0);