Savoir si une fenêtre est affichée ou cachée(mise dans la barre en bas)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 281 fois - Téléchargée 31 fois

Contenu du snippet

Dans ce code il y a une API qui sert a savoir si une fenêtre(n'importe la quelle tant que l'on connait le handle) est cachée ou affichée. Dans l'exemple il faut créer un timer et mettre le code. Pour que vous ayez le temps de la réduire ou de l'afficher (la form) mettez le timer à 2000.

Source / Exemple :


Private Declare Function IsIconic Lib "user32" ( ByVal hwnd As Long) As Long

Private Sub connaitre()
    Dim rep As Integer
    rep = IsIconic(Me.hwnd)
    If (rep <> 1) Then '  1 si la fenêtre est cachée
        MsgBox "La fenêtre n'est pas cachée", , ""
    Else'                        0 si elle est affichée
        MsgBox "Le fenêtre est cachée", , ""
    End If
End Sub

Conclusion :


ça marche sous NT qu'a partir de 3.1.

A voir également

Ajouter un commentaire Commentaires
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
15 juin 2004 à 20:21
oui, en remplacant Me.hWnd par le handle de la fenetre considerée...

disons que l'API est deja connue, a la base, et que le couple Timer + MsgBox n'est pas forcément le plus indiqué....
jrbleboss Messages postés 480 Date d'inscription jeudi 6 mai 2004 Statut Membre Dernière intervention 3 septembre 2007 1
15 juin 2004 à 18:51
Salut avec ce code vous pouvez savoir si n'importe quel fenetre est caché ou affichée
cs_kehops Messages postés 25 Date d'inscription mercredi 26 mars 2003 Statut Membre Dernière intervention 20 mars 2007
15 juin 2004 à 16:43
kler!, d'ailleurs y a une personne qui ta noté 1 (comme quand ta fenêtre est cachée) lol
Ce.plusplus Messages postés 48 Date d'inscription jeudi 25 septembre 2003 Statut Membre Dernière intervention 14 septembre 2012
15 juin 2004 à 02:55
lol
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
14 juin 2004 à 20:55
un MsgBox dans un timer ? interessant... faut aimer cliquer ;)


en VB, on peut se contenter de :

If Me.WindowState = VbMinimized Then.......

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.