OVH Cloud OVH Cloud

menu fenetre application access 2000

1 réponse
Avatar
lou
bonjour
avec ce code je devrais en principe pouvoir iniber
Fermer ,Reduire ,Niveau inferieur , etc etc dans la fenetre de l'application
access 2000
et bien il n'a que la croix qui se desactive alors que je veux tout
desactiver
j'ai essayé
la fonction "MenuAccessInactif " seul qui en principe desactive tout,
toujours rien que la croix

j'ai essaye un par un tout les item rien ne se passe pourtant il y en a qui
disent que chez eux ça fonctionne
je ne comprends pas ce qui ne va pas chez moi !!!
j'ai besoin d'aide svp!
quelq'un peut -il m'envoyer une petite bd avec le module et un form qui est
censé fonctionner chez lui
que je vois si ça marche chez moi???
un grand merci de votre aide
voici le code :

Option Compare Database
Option Explicit

Public Declare Function GetSystemMenu Lib "user32" _
(ByVal hwnd As Long, ByVal bRevert As Long) As Long

Public Declare Function GetMenuItemCount Lib "user32" _
(ByVal hMenu As Long) As Long

Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, _
ByVal nPosition As Long, ByVal wFlags As Long) As Long

Public Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As
Long


Global Const MF_BYPOSITION = &H400
Global Const MF_REMOVE = &H1000

Public Function MenuAccessInactif(Optional MenuItem)
'** MenuItem
'** 6 : Fermer
'** 5 : Barre de séparation
'** 4 : Agrandir
'** 3 : Reduire
'** 2 : Taille
'** 1 : Déplacer
'** 0 : Restaurer
'On Error Resume Next
Dim hMenu As Long
Dim menuItemCount As Long
Dim i As Integer
hMenu = GetSystemMenu(Application.hWndAccessApp, 0)
If hMenu Then
menuItemCount = GetMenuItemCount(hMenu)
If IsMissing(MenuItem) = True Then
For i = menuItemCount - 1 To 0 Step -1
Call RemoveMenu(hMenu, i, MF_REMOVE Or MF_BYPOSITION)
Next
Else
Call RemoveMenu(hMenu, MenuItem, MF_REMOVE Or MF_BYPOSITION)
End If

Call DrawMenuBar(Application.hWndAccessApp)
End If
End Function

1 réponse

Avatar
lou
desolé j'ai compris ce qui se passe en fait ça marche pour le menu qui se
trouve sur l'icone de la db qui se trouve sur la barre des taches ok

mais pourquoi sur la fenetre de la bd au dessus a droite ce commandes sont
encore accessibles c'est celle la que je veux désactiver

merci de votre aide
"lou" a écrit dans le message de news:
4226cb62$0$18755$
bonjour
avec ce code je devrais en principe pouvoir iniber
Fermer ,Reduire ,Niveau inferieur , etc etc dans la fenetre de
l'application

access 2000
et bien il n'a que la croix qui se desactive alors que je veux tout
desactiver
j'ai essayé
la fonction "MenuAccessInactif " seul qui en principe desactive tout,
toujours rien que la croix

j'ai essaye un par un tout les item rien ne se passe pourtant il y en a
qui

disent que chez eux ça fonctionne
je ne comprends pas ce qui ne va pas chez moi !!!
j'ai besoin d'aide svp!
quelq'un peut -il m'envoyer une petite bd avec le module et un form qui
est

censé fonctionner chez lui
que je vois si ça marche chez moi???
un grand merci de votre aide
voici le code :

Option Compare Database
Option Explicit

Public Declare Function GetSystemMenu Lib "user32" _
(ByVal hwnd As Long, ByVal bRevert As Long) As Long

Public Declare Function GetMenuItemCount Lib "user32" _
(ByVal hMenu As Long) As Long

Public Declare Function RemoveMenu Lib "user32" (ByVal hMenu As Long, _
ByVal nPosition As Long, ByVal wFlags As Long) As Long

Public Declare Function DrawMenuBar Lib "user32" (ByVal hwnd As Long) As
Long


Global Const MF_BYPOSITION = &H400
Global Const MF_REMOVE = &H1000

Public Function MenuAccessInactif(Optional MenuItem)
'** MenuItem
'** 6 : Fermer
'** 5 : Barre de séparation
'** 4 : Agrandir
'** 3 : Reduire
'** 2 : Taille
'** 1 : Déplacer
'** 0 : Restaurer
'On Error Resume Next
Dim hMenu As Long
Dim menuItemCount As Long
Dim i As Integer
hMenu = GetSystemMenu(Application.hWndAccessApp, 0)
If hMenu Then
menuItemCount = GetMenuItemCount(hMenu)
If IsMissing(MenuItem) = True Then
For i = menuItemCount - 1 To 0 Step -1
Call RemoveMenu(hMenu, i, MF_REMOVE Or MF_BYPOSITION)
Next
Else
Call RemoveMenu(hMenu, MenuItem, MF_REMOVE Or MF_BYPOSITION)
End If

Call DrawMenuBar(Application.hWndAccessApp)
End If
End Function