bonjour
j'ai besoin que les utilisateurs ne puissent fermer l'application que par le bouton mis en place sur le formulaire. Or je n'arrive pas à désactiver la croix rouge de fermeture d'accès lui même
Auriez vous une idée ?
merci
bonjour
j'ai besoin que les utilisateurs ne puissent fermer l'application que par le bouton mis en place sur le formulaire. Or je n'arrive pas à désactiver la croix rouge de fermeture d'accès lui même
Auriez vous une idée ?
merci
Bonjour,
regardez bien dans les propriétés des formulaires. il ya une propriété qui sert à désactiver ce bouton.
La deuxième possibilité est d'ouvrir le formulaire en mode plein écran: docmd.miximize et pas de bordure et formulaire indépendant.
bye
Merci
j'ai bien regardé, mais je ne parle pas du formulaire mais de la croix d'acces même qui apparait tout en haut à droite
Bonjour Isabelle,
Voir dans la FAQ, le lien suivant : Désactiver/Activer le bouton fermeture du menu système de la fenêtre Access.
Domi2
Bonjour,
il faut passer par les API windows.
Exemple : Dans un module standard :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 Const MF_BYCOMMAND = &H0& Const MF_APPEND = &H100& Const MF_INSERT = &H0& Const MF_BYPOSITION = &H400& Const MF_REMOVE = &H1000& Const SC_CLOSE = &HF060& Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As Long, ByVal bRevert As Long) As Long Private Declare Function RemoveMenu Lib "user32" (ByVal HMenu As Long, ByVal uPosition As Long, ByVal uFlag As Long) As Long Private Declare Function DrawMenuBar Lib "user32" (ByVal hWnd As Long) As Long Public Sub DisableAppClose() Dim MenuHandle As Long MenuHandle = GetSystemMenu(Application.HwndAccessApp, 0) RemoveMenu MenuHandle, SC_CLOSE, MF_BYCOMMAND Or MF_REMOVE DrawMenuBar Application.HwnAccessApp End Sub
bjr
si tu pouvais nous dire un peu en quoi cela te gène!?!
@+
Merci beaucoup
je suis allée voir dans la fac Domi, j'ai appliqué mais il me dit variable ou procédure attendue et non un module quand j'exécute
j'ai mis le tien également en place Ilank mais idem
J'ai copié ton code dans un module
j'ai appelé la fonction DisableAppClose sur le chargement du menu démarrage mais il fait la même chose
Re,
Tu n'aurais pas nommé ton module et la fonction avec le même nom, par hasard ?variable ou procédure attendue et non un module
Domi2
ben si c'est plus facile, enfin je croyais ! attends j'essaie de changer le nom![]()
Eh bien, c'était bien ça ! je te jure, il est compliqué ce acces
merci à vous
bonne journée
![]()
Non non ! Mais si tu veux qu'il retrouve "ses petits"...il est compliqué ce acces
Bonne suite de dév !
Domi2
bonjour j ai essayer les codes que vous avez inscrit mais ca ne fonctionne pas
et lorsque je fais lesur chargement de ma page principale il ne l' ouvre pas
Code : Sélectionner tout - Visualiser dans une fenêtre à part DisableAppClose
par contre je n' ai rien changer du tout je sais pas si il y a des choses a adapter ...
ha bien j ai trouver ce qu in' interesse merci
par contre y as t' ilmoyen de retiré carrément ceci (voir piece jointe)
ou en tout cas le plus possible
Bonjour,
Je répond uniquement pour ce qui concerne la désactivation du X de fermeture.
Les codes donnés ne fonctionnent pas avec Access 2007 (malheureusement).
Regarde cette discussion pour une solution de contournement (voir PGZ).
Domi2
Bonjour,
Je répond uniquement pour ce qui concerne la désactivation du X de fermeture de Access.
En ce qui me concerne sur ma version access le code qui fonctionne bien est, dans le module du formulaire d'accueil :
(J'ai du ajouter la fonction ptrsafe pour que cela fonctionne et modifier les lignes des constantes)
Pour desactiver le x de fermeture de formulaires, dans les propriétés du formulaire / Format il y a l'option bouton de fermeture oui/non
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Option Compare Database Private Declare PtrSafe Function GetSystemMenu Lib "user32" _ (ByVal hwnd As Long, ByVal bRevert As Long) As Long Private Declare PtrSafe Function RemoveMenu Lib "user32" _ (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long Const SC_CLOSE = &HF060& Const MF_BYCOMMAND = &H0& Private Sub Form_Load() Dim hSysMenu As Long hSysMenu = GetSystemMenu(Application.hWndAccessApp, False) ' Pour réactiver : hSysMenu = GetSystemMenu(Application.hWndAccessApp, True) RemoveMenu hSysMenu, SC_CLOSE, MF_BYCOMMAND End Sub
Bien cordialement
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager