jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 2010
-
7 avril 2005 à 01:02
cs_titwan
Messages postés23Date d'inscriptionmercredi 2 avril 2003StatutMembreDernière intervention31 août 2007
-
5 avril 2006 à 08:25
Bonjour, j'ai une application que j'ai reduit dans le systray.
j'aimerais savoir s'il est possible de réagir a une combinaison de
touche, alors que je n'ai qu'un NotifyIcon et un ContextMenu associé ...
Pendant que j'y suis, quelle est la meilleure facon de mettre une
application dans le systray, j'ai donc une form vide, avec seulement le
notifyicon et le contextmenustrip, dans les propriétés j'ai mis le
windowstate à minimized et le ShowInTaskBar à False, je veux que ca me
prenne le minimum de mémoire, c'est bon comme ca ?
Merci
Je bosse en .net 2, mais je pense pas que ca change grand chose.
cs_coq
Messages postés6350Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 7 avril 2005 à 08:20
Salut,
En utilisant les méthodes des APIs : RegisterHotkey et UnregisterHotKey c'est faisable.
Je n'ai pas connaissance d'un équivalent existant dans le Framework .Net 1.1, et encore moins en 2.0 :-)
------- using HOTKEYs in a C# application ------- */
[DllImport("user32.dll", SetLastError=true)]
public static extern bool
RegisterHotKey( IntPtr hWnd, // handle to
window
int
id,
// hot key identifier
KeyModifiers fsModifiers, // key-modifier options
Keys
vk //
virtual-key code
);
[DllImport("user32.dll", SetLastError=true)]
public static extern bool
UnregisterHotKey( IntPtr hWnd, // handle to
window
int
id // hot key identifier
);
[Flags()]
public enum KeyModifiers
{
None = 0,
Alt = 1,
Control = 2,
Shift = 4,
Windows = 8
}
c'est tout
j'ai trouvé les infos sur www.codeproject.com/csharp/popupkiller.asp (a
regarder avec le cache de google, car codeproject a l'air d'avoir des
problèmes
cs_coq
Messages postés6350Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 7 avril 2005 à 21:07
De rien :-)
Je pense que tu devrais sortir "const int WM_HOTKEY = 0x0312;" du WndProc et plutot la mettre en membre de la classe, ce n'est pas nécessaire de l'avoir locale à la fonction.
En plus vu le nombre de message que reçoit une appli, ça doit être méchant niveau perfs :-)
Cocoricoooooooo !!!!
coq
MVP Visual C#
Vous n’avez pas trouvé la réponse que vous recherchez ?
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 7 avril 2005 à 21:44
Ce que j'ai montré c'est le code que j'ai trouvé sur le net, mais c'est
clair que ca doit pouvoir s'optimiser, bien sur en virant la constante
d'ici, et peut etre en supprimant le switch, en laissant un simple if