Always on top app

Soyez le premier à donner votre avis sur cette source.

Vue 14 713 fois - Téléchargée 631 fois

Description

Ce petit programme permet de mettre n'importe quelle fenêtre visible dans la barre des taches en "Always on the top" (soit toujours visible).

Source / Exemple :


/* 

  • Utilisation des API :
  • Voici les méthodes utilisées dans ce code
                                                                                                                  • /
// Les namespaces utiles using System.Runtime.InteropServices; using System.Text; // Récuperer le handle des fenetres : // -> Déclarations public delegate bool EnumWindowsProc(IntPtr hwnd, int lParam); [DllImport("user32")] public static extern int EnumWindows(EnumWindowsProc lpEnumFunc, int lParam); // -> Code a mettre en oeuvre // Appel de la méthode EnumWindows(new EnumWindowsProc(EnumWindow), 0); // CallBack private bool EnumWindow(IntPtr hwnd, int lparam) { // Vous pouvez récupere ici le Handle des fenetres (paramètre hwnd) return true; } //Récuperer le titre des fenêtres : // -> Déclarations : [DllImport("user32.dll")] public static extern int GetWindowText(IntPtr hWnd, [Out] StringBuilder lpString, int nMaxCount); [DllImport("user32.dll")] public static extern int GetWindowTextLength(IntPtr hWnd); // -> Code a mettre en oeuvre // Paramètre hwnd : Handle de la fenêtre pour laquelle vous voulez récuperer le texte public static string GetWindowText(IntPtr hWnd) { StringBuilder sb = new StringBuilder(GetWindowTextLength(hWnd) + 1); GetWindowText(hWnd, sb, sb.Capacity); return sb.ToString(); }

Conclusion :


Il y a certainement des bugs.
J'ai par exemple remarqué qu'il ne desactivait pas toujours les fenetres qui etaient dejà "Toujours au dessus".

Le code n'est pas dur a comprendre. Il utilise les API windows.

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
50
J'avais meme pas pensé a ca :D
Messages postés
216
Date d'inscription
jeudi 30 janvier 2003
Statut
Membre
Dernière intervention
12 avril 2017
2
Très interressant et finalement pas très compliqué. Bravo, par contre il peut être pas mal que ton application sois toujours au dessus des autres car sinon c'est moins facile de repasser celles-ci en normale (j'ai juste ajouté this.TopMost=true;).

Je vais m'empresser de regarder tes autres sources.

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.