Problème de fermeture d'une fenêtre vb 2010 [Résolu/Fermé]

Signaler
Messages postés
130
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 avril 2019
-
yannel777
Messages postés
130
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 avril 2019
-
Bonjour,
Je voulais savoir comment fait on avec la commende e.Cancel= true qui empêche la fermeture de mon application

Public Class Form1

Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
e.Cancel = True

End Sub
ENd Class

et Me.Close qui lui Ferme que le la form

Public Class Gestion_des_Fenêtres_Test_2

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Me.Close()
End Sub
End Class


mais les deux ensemble dans la même form
cela ne marche pas pourquoi ?

Il aurait il un autre moyen qui permet de fermer juste la fenêtre et que l'utilisateur n'est pas accès à la fermeture du programme par la petite croix rouge en haut à droite?

Merci de votre compréhension!!!

2 réponses

Messages postés
1513
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
119
Bonjour,

Pour désactiver la croix :
Dans la partie déclaration de l'UF


'pour enlever la croix rouge d'un UF
 Declare Function GetWindowLongA Lib "user32" _
(ByVal hwnd As Long, ByVal nIndex As Long) As Long

 Declare Function SetWindowLongA Lib "user32" _
(ByVal hwnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

 Declare Function FindWindowA Lib "user32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Dans l'initialisation de l'UF

Private Sub UserForm_Initialize()
Dim hwnd As Long
    hwnd = FindWindowA("Thunder" & IIf(Application.Version Like "8*", "X", "D") _
    & "Frame", Me.Caption)
    SetWindowLongA hwnd, -16, GetWindowLongA(hwnd, -16) And &HFFF7FFFF
End Sub


cf : http://www.commentcamarche.net/faq/12794-vba-enlever-la-croix-rouge-d-un-userform
Messages postés
130
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 avril 2019
19
Bonjour Mélanie,

Je voulais savoir qu'est que c'est l'initiation d"un UF

J'ai vu votre lien, je vois que cela concerne le VBA, j'en déduit que c'est la même chose pour le VB 2010

(Je suis débutant en Visual Basic 2010)

Merci de votre compréhension
melanie1324
Messages postés
1513
Date d'inscription
vendredi 25 mai 2007
Statut
Membre
Dernière intervention
31 janvier 2018
119
Pardon, j'avais pas vu qu'il s'agissait de vb. Oui le code fourni est pour VBA.

Voici ce que j'ai trouvé pour vb10 :

http://hack.xooit.com/t167-Desactiver-la-fermeture-par-defaut-d-un-Form-VB-net.htm
yannel777
Messages postés
130
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 avril 2019
19
pas grave merci quand même : )
J'ai regarder la code mais comme je l'ai dis au dessus, cela ne fonctionne pas avec
le code :
 Me.Close()

c'est pour cela que je recherche un autre moyen pour fermer une fenêtre.
(sans passer par
Me.dispose() 
car lui il ferme carrément le processus, je voudrai juste la fenêtre qui soit fermée)

Merci de votre compréhension
yannel777
Messages postés
130
Date d'inscription
lundi 4 mai 2009
Statut
Membre
Dernière intervention
19 avril 2019
19
Me.Hide()