Désactivation de la case "Fermer" d'une base de données

Signaler
Messages postés
4
Date d'inscription
dimanche 14 novembre 2004
Statut
Membre
Dernière intervention
15 juillet 2006
-
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
-
Bonjour,

Je veux désactiver la case "Fermer" (X) situé à droite de la barre de titre d'une application Access ou capter l'événement qui est activé lorsqu'on clique ce "X" afin d'ouvrir à ce moment un formulaire qui ferme proprement l'application.

Je n'arrive pas à trouver l'événement qui est activé lorsqu'on cllique le "X".

Quelqu'un peut-il m'aider ?

Merci à l'avance.

Pierre

7 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Salut,

Essaie ça : pas pour l'application Microsoft Acces Mais Un UserForm
Je sais pas si c'est avec le Userform que tu travailles, donc dans le doute, je te le met !



' A placer dans les déclarations !



Private Declare Function



GetWindowLongA


Lib
"user32"

_
(


ByVal

hwnd


As Long

,


ByVal

nIndex


As Long

)


As Long






Private Declare Function




SetWindowLongA


Lib
"user32"

_
(


ByVal

hwnd


As Long

,


ByVal

nIndex


As Long

, _



ByVal

dwNewLong


As Long

)


As Long






Private Declare Function




FindWindowA


Lib
"user32"

_
(


ByVal

lpClassName


As String

,


ByVal

lpWindowName


As String

)


As Long









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










@++ 

   Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois !"
Messages postés
2375
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
22
Il y a quelques temps une question similaire avait été posée désactiver la croix d'un UserForm VBA Excel.
Aucune des solutions évoquées ne fonctionné.

Mortalino, c'est moi qui ai du mal ou alors je ne vois aucun rapport avec la demande de Kalymar ??
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
C'est peut-être moi, j'ai les yeux qui se ferment !!
Dans sa question, j'arrive pas à déceler s'il veut occulter la croix de Ms Access ou d'un UserForm !
Maintenant il est fort probable que c'est la croix de Ms Access.
Dans ce cas, mon post est inutile.
Si c'est pour un UserForm, la croix s'effacera !











@++ 

   Mortalino
Le mystérieux chevalier, "Proven.....j'la remet plus, ça me gave
Messages postés
4
Date d'inscription
dimanche 14 novembre 2004
Statut
Membre
Dernière intervention
15 juillet 2006

Je veux occulter la croix de MS Access. Je n'ai aucun problème avec les UserForms

Pierre
Messages postés
4
Date d'inscription
dimanche 14 novembre 2004
Statut
Membre
Dernière intervention
15 juillet 2006

À Mortalino,

Il existe une solution beaucoup plus simple pour ne pas afficher le bouton "Fermer" (X) d'un formulaire.

Dans la feuille des propriétés d'un formulaire, il suffit de paramétrer la propriété "Bouton Fermer" à "Non" et le "X" n'est pas activé.

Pierre
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Je ne le savais pas ! En VBA, je suis le plus souvent avec Excel et ce genre d'opération ne peut être fait qu'avec l'API.

Donc pour ton problème, je ne sais pas comment faire, désolé !

@++ 

   Mortalino
Le mystérieux chevalier, "Proven
Messages postés
630
Date d'inscription
samedi 15 février 2003
Statut
Modérateur
Dernière intervention
9 octobre 2011
1
Il n'existe pas l'évenement QueryUnload comme sous VB6 ( de mémoire .)

Juste faites-le