Application dans barre des taches

Soyez le premier à donner votre avis sur cette source.

Snippet vu 14 266 fois - Téléchargée 39 fois

Contenu du snippet

Code sous Visual C++ 6.

Ce code vous montre comment mettre/enlever une icone de votre appli dans la barre des taches.

NB : je me suis aidé de l'aide MSDN. Je n'ai pas entierement de mérite, mais bon je suis deja content.

Source / Exemple :


//--------------------------------------------------
//Pour ajouter  :

////////////////////////////
// Déclaration de l'objet
NOTIFYICONDATA ndata;

///////////////////////////
// Initialisation

// taille de l'objet
ndata.cbSize = sizeof(NOTIFYICONDATA);

// fenetre de l'appli    
ndata.hWnd = hWnd; // cette valeur est à
    			récupéré
			Par exemple :
		CMyDialogue::m_hwnd

// un nombre défini par l'utilisateur identifiant de façon unique l'icône de la barre des tâches
ndata.uID = 1;

// la présence de ces paramètres indique que le champ correspondant de la structure contient une valeur valide
ndata.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP;

// ce parametre est utilisé pour gérer les evenement souris sur l'icone dans la barre des taches.Je n'ai pas tres bien compris comment il fonctionne.
ndata.uCallbackMessage = MESSAGE; // message qui sera envoyé à la fenêtre. On peut mettre NULL.

// icone qui sera affiché dans la barre des taches
ndata.hIcon = LoadIcon(NULL,IDI_APPLICATION);

// l'infobulle à afficher
strcpy(ndata.szTip, "SystemTray !");

// Ajouter à la barre des taches
Shell_NotifyIcon(NIM_ADD, &ndata);

//--------------------------------------------------
//Pour enlever :

// les paramètres sont les meme que les précédents
ndata.cbSize = sizeof(NOTIFYICONDATA); 
ndata.hWnd = hwnd;
ndata.uID = uID; 

// Enlever de la barre des taches         
Shell_NotifyIcon(NIM_DELETE, &ndata);

Conclusion :


Voila.

Pour la suite, je suis en train de voir comment gérer les évènements souris.

A voir également

Ajouter un commentaire

Commentaires

LallThis
Messages postés
13
Date d'inscription
lundi 16 avril 2001
Statut
Membre
Dernière intervention
9 août 2007

Il me semble qu'il y a plus simple : contrôle C# existant.
Voici un petit qui explique comment faire :
http://www.developer.com/net/net/article.php/3336751/C-Tip-Placing-Your-C-Application-in-the-System-Tray.htm

Rénald
biga1
Messages postés
8
Date d'inscription
mercredi 24 septembre 2008
Statut
Membre
Dernière intervention
15 avril 2011

est il possible d'avoir le code simil en c#
cs_polo12
Messages postés
15
Date d'inscription
mardi 15 octobre 2002
Statut
Membre
Dernière intervention
29 octobre 2010

merci pour ce code mais on ne peut plus faire sortir la fenêtre ...
arrete de npus faire chier avec ton nom du compilateur il la mit peut-être pas dans le titre mais bon !
LE COMPILATEUR DANS LE TITRE DE LA SOURCE !!!!

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.