Verifier si notre fenetre est masquee par une autre (partiellement ou completement)

Description

Suite à question sur le forum (http://www.csharpfr.com/forum.v2.aspx?ID=298858), un petit code qui permet de déterminer si des fenêtres se trouvent au dessus de la notre.

Ce code sera à adapter à chaque situation. (vous n'aurez pas forcement besoin de connaitre le nombre et le texte des fenêtres).

De même, il faudra probablement rajouter un filtrage pour éviter que les fenêtres enfants des applications "masquantes" ne soient comptées (ainsi que leurs menus etc).

Source / Exemple :


voir zip

Les principales methodes utilisées proviennent de user32:
GetWindow
GetWindowRect
IsWindowVisible

(+ GetWindowTextLength et GetWindowText pour l'affichage des textes des fenêtres.)

Conclusion :


Liens MSDN
GetWindow : http://msdn.microsoft.com/en-us/library/ms633515.aspx
GetWindowRect : http://msdn.microsoft.com/en-us/library/ms633519.aspx
IsWindowVisible : http://msdn.microsoft.com/en-us/library/ms633530.aspx

Codes Sources

A voir également

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.