VB6 - Message déroulant hors écran. + barre des tâches

Décembre 2016

Message déroulant Démo.

Pour envoyer un message d'alerte ou tout simplement un message à l'utilisateur certain d'entre-vous font « dérouler » une boite à partir d'un bord de l'écran. Mais c'est sans compter avec la barre des tâches, qu'elle soit fixe ou rentrante.
Cette démo tient compte de la barre des tâches quelle que soit sa position et sont mode (Fixe/rentrante).
Dans le mode ou la barre des tâches est rentrante le boite à message suis sa positions dans tout les modes, même si sa position est modifiée pendant l'affichage du message
J'en ai profité pour ajouter quelque sous routines nécessaire au fonctionnement de la démo.
  • Arrondir les coins de la forme du message
  • Une forme toujours au dessus du bureau (du moins presque toujours)


Retrait auto : cache le message automatiquement après +- 6 secondes (réglable)
Cliquer sur le message le referme.

Les paramètres de la barre des tâches


'A mettre dans un module. Module1 par exemple.
Option Explicit  

Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long  
Private Declare Function GetWindowPlacement Lib "user32" (ByVal hWnd As Long, lpwndpl As WINDOWPLACEMENT) As Long  

   
Private Type POINTAPI  
        X As Long  
        Y As Long  
End Type  
Private Type RECT  
        Left As Long  
        Top As Long  
        Right As Long  
        Bottom As Long  
End Type  
Private Type WINDOWPLACEMENT  
        Length As Long  
        FLAGS As Long  
        showCmd As Long  
        ptMinPosition As POINTAPI  
        ptMaxPosition As POINTAPI  
        rcNormalPosition As RECT  
End Type  
Public WinPlacement As WINDOWPLACEMENT  

Sub GetTasckBarPlacement()  
Dim TrayHwnd As Long  
    TrayHwnd = FindWindow("Shell_traywnd", "")  
    WinPlacement.Length = Len(WinPlacement)  
    GetWindowPlacement TrayHwnd, WinPlacement  
End Sub


Vous pouvez télécharger un projet de démo ici

.


A voir également :

Ce document intitulé «  VB6 - Message déroulant hors écran. + barre des tâches  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.