molbento
Messages postés35Date d'inscriptionvendredi 6 avril 2007StatutMembreDernière intervention23 mai 2007
-
30 avril 2007 à 17:02
romainvv
Messages postés46Date d'inscriptionlundi 19 mars 2007StatutMembreDernière intervention22 mai 2009
-
6 mai 2007 à 18:36
Bonjour je pense que le titre est assez clair. J'aimerais savoir s'il y a la fonction de la petite croix rouge en haut a droite (bouton fermer) d'une form peut etre modifier. Quelqu'un peut-il m'aider
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 30 avril 2007 à 17:08
regarde les évènement QueryUnload et Unload, tu as un paramètre qui te donne l'indication de la raison de la fermeture.
Une de ces raisons est le click sur la croix (appelé menu système, je crois)
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
romainvv
Messages postés46Date d'inscriptionlundi 19 mars 2007StatutMembreDernière intervention22 mai 2009 5 mai 2007 à 17:30
Y-aurait-il moyen de dévider le bouton "fermer" pour que les fênetre se minimise
Un truc du genre :
Private sub le_bouton_X_click (.....) handles bouton.click
Me.hide
End Sub
Tu sais pas comment faire ca ?
J'ai cherché mais j'ai trouvé qu'en delphi
romainvv
Messages postés46Date d'inscriptionlundi 19 mars 2007StatutMembreDernière intervention22 mai 2009 5 mai 2007 à 19:34
J'ai trouvé ca :
PrivateSub Form1_FormClosing(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles _
MyBase.FormClosing
If e.CloseReason.UserClosing Then
e.Cancel = True
EndIf
EndSub
mais quand je le modifie en ca :
PrivateSub Form1_FormClosing(ByVal sender As System.Object, _
ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles _
MyBase.FormClosing
Me.Hide ()
EndSub
ca va pas
Vous n’avez pas trouvé la réponse que vous recherchez ?
romainvv
Messages postés46Date d'inscriptionlundi 19 mars 2007StatutMembreDernière intervention22 mai 2009 6 mai 2007 à 15:36
Merci bien
Mais il y a un mais ...
J'ai fait un notifyicon quand je clique sur l'icone j'ai le menu que j'ai mis avec le bouton fermer (Me.close) le programme ben il le ferme pas !
Logique vu que je lui dit que si on le ferme il se masque ...
N'y a t il pas une variante pour avoir un événement uniquement quand j'appuie sur le bouton X ?
Merci ,
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 6 mai 2007 à 16:52
ce que tu peux faire, c'est dans le bouton qui doit fermer l'application, au lieu d'appeler Me.Close pour fermer la fenetre, tu appele Application.Closing. A vérifier avant que tout à été correctement fermé et que cette fenetre est bien la dernière à fermer.
Ensuite dans Form_Closing tu filtre les raisons de la fermeture. Pour un click sur la croix, tu auras UserClosing, dans ce cas tu réduit la fenetre et t'annule la fermeture.
Dans les autres cas, et notamment sur le click du bouton ou tu obtiendra ApplicationExitCall comme raison, tu laisse faire la fermeture normale.
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 6 mai 2007 à 18:17
Excuse moi, je me suis tromper, c'est Application.Exit
Après ApplicationExitCall tu n'en a pas vraiment besoin, tu peux conserver le code de Form_Closing que je t'avais donné avant.
Mais si tu veux voici un exemple de l'utilisation que tu pourrais en faire :
Private Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
'Si fermeture volontaire par l'utilisateur
If e.CloseReason = CloseReason.UserClosing Then
'fermeture annulé
e.Cancel = True
'A la place, reduction et masquage de la fenetre
Me.Hide()
ElseIf e.CloseReason = CloseReason.ApplicationExitCall Then
'Si bouton Fermer
If MessageBox.Show("Fermeture de définitive de l'application.", "ATTENTION", _
MessageBoxButtons.OKCancel, MessageBoxIcon.Warning, _
MessageBoxDefaultButton.Button2) = Windows.Forms.DialogResult.Cancel Then
'Choix du bouton Annuler --> Annulation de la fermeture
e.Cancel = True
'A la place, reduction et masquage de la fenetre
Me.Hide()
End If
End If
End Sub
---- Sevyc64 (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #