Problème de fermeture de Form [Résolu]

cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention - 17 févr. 2006 à 11:28 - Dernière réponse : cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention
- 17 févr. 2006 à 12:54
Bonjour à tous,

J'ai une form avec une notifyicon et le problème c'est que quand je quitte windows mon appli empeche windows de se fermer j'ai l'impression. Quand windows est fermer par défaut il quitte les applis ouverte mais il s'arrete à la mienne. Soit mon appli est tellement mal concu que windows, qui est mal concu egalemment, deconne et n'arrive pas à la fermer ou soit y doit manquer un bout de code quelque part.

Qu'en pensez vous ?

Par avance, merci.
Afficher la suite 

Votre réponse

10 réponses

Meilleure réponse
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 17 févr. 2006 à 12:03
3
Merci
Si c'est le cas, plusieurs choix (en .Net 1)

Ajouter ce code a ton appli


<HR>

public const int SC_CLOSE = 0xF060;
public const int WM_SYSCOMMAND = 0x0112;
private bool closeClick;

protected override void WndProc(ref System.Windows.Forms.Message m)
{if(m.Msg WM_SYSCOMMAND && (int)m.WParam SC_CLOSE)
this.closeClick = true;
base.WndProc(ref m);
}

<HR>
Si closeClick est a true, tu annules ton evenement, sinon, tu laisses windows fermer.

Ou utiliser les evenements de la classe SystemEvents
Mx
MVP C#

Merci MorpionMx 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 102 internautes ce mois-ci

Commenter la réponse de MorpionMx
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 17 févr. 2006 à 11:56
0
Merci
Salut,

Tu n'aurais pas une annulation dans l'evenement Closing de ton appli ?



Mx
MVP C#
Commenter la réponse de MorpionMx
sebmafate 4947 Messages postés lundi 17 février 2003Date d'inscription 14 février 2014 Dernière intervention - 17 févr. 2006 à 11:57
0
Merci
hum... à la fermeture du formulaire ne ferais-tu pas un e.Cancel = false ?


Sébastien FERRAND (
blog)
[Microsoft MVP Visual C#]
Commenter la réponse de sebmafate
cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention - 17 févr. 2006 à 12:20
0
Merci
ben oui justement je fais e.Closing = false pour qu'il ne reste plus que mon notifyicon de visible. Merci je vais suivre ton idée.C'est chiant je peux tjs pas valider les réponses, j'ai essayé avec firefox et explorer et ca ne fait rien.
Commenter la réponse de cs_emmanuel9
cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention - 17 févr. 2006 à 12:20
0
Merci
Ca serait pas un problème avec le javascript qui n'est pas actif ou un truc comme ca ?
Commenter la réponse de cs_emmanuel9
cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention - 17 févr. 2006 à 12:25
0
Merci
Je voudrais mettre en ligne une classe sur csharpfr qui recoit une ArrayList de chaine et qui renvoi une objet PrintDocument pour l'impression, ca gére le retour automatique à la ligne et le nombre de page. Mais c'est du c++.net, est ce que je peux le mettre en ligne ou bien est ce que je dois le convertir en c# ?
Commenter la réponse de cs_emmanuel9
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 17 févr. 2006 à 12:39
0
Merci
Oui, pour la validation, y'a un petit bug ces temps.
Et pour ta source, si c'est du c++.net, il faut le mettre sur cppfrance (y'a une section .net). Sinon il faudra que tu la convertisse en C# pour la poster ici



Mx
MVP C#
Commenter la réponse de MorpionMx
cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention - 17 févr. 2006 à 12:41
0
Merci
Dans l'évenement Closing de ma Form, j'ai :

MessageBox.Show(closeClick) ;

if (closeClick == false)
{
e.Cancel = true ;
this.Visible = false ;
}

Et quand je ferme Windows Le messagebox me marque "false".. et donc ne ferme pas mon appli.
Commenter la réponse de cs_emmanuel9
MorpionMx 3489 Messages postés lundi 16 octobre 2000Date d'inscription 30 octobre 2008 Dernière intervention - 17 févr. 2006 à 12:45
0
Merci
Oui, closeClick sera a true quand c'est l'utilisateur qui va vouloir quitter la Form il me semble.
Donc il ne faut pas annuler l'evenement quand closeClick est a false, mais quand closeClick est a true...



Mx
MVP C#
Commenter la réponse de MorpionMx
cs_emmanuel9 903 Messages postés mercredi 23 février 2005Date d'inscription 16 juin 2010 Dernière intervention - 17 févr. 2006 à 12:54
0
Merci
if (closeClick == true)
{
e.Cancel = true ;
this.Visible = false ;
}

Oui comme ca, ca marche, j'avais inversé, merci de ton aide.
Commenter la réponse de cs_emmanuel9

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.