|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Expert Confirmé
![]() ![]() Claude Développeur informatique Inscription : juin 2003 Messages : 1 807 ![]() |
Bonjour,
je suis plus un habitué du forum windev, mais je viens vers vous car je n'arrive pas à me dépatouiller de l'API EnableMenuItem. Je cherche à piloter une appli qui tourne sous win2000. Cette partie fonctionne. De plus, on me demande de bloquer certaines fonctions : La croix de fermeture, et les options "Fermer" et "Quitter". J'ai bien réussi à désactiver la croix, mais je n'arrive pas à griser (ou désactiver) les items du sous-menu "Fichier". Voici le code que j'utilise (en wlangage de windev) : Code :
Par contre si je fais : Code :
RetourFonction=API("USER32","EnableMenuItem",nMenu ,2,0x0401) // 4 = MF_ByPosition / 1 = MF_Grayed
Est-ce que quelqu'un peut m'aider là-dessus ? Merci d'avance pour vos réponses et autres idées. Note : si vous avez du code en c, c++ ou vb, je m'en sortirai sans problème.
__________________
Commencez toujours par là : et puis n'hésitez à passer par là : ou par un autre moteur de recherche...Pas de question par MP s'il vous plait. Le forum est fait pour cela... Make it real not fantasy |
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() Claude Développeur informatique Inscription : juin 2003 Messages : 1 807 ![]() |
J'ai modifié mon code en mettant 0x0403 : 0x0400 = MF_ByPosition / 0x0001 = MF_Grayed / 0x0002 = MF_Disabled.
Cela fonctionne... sans fonctionner... Je m'explique : Lorsque je lance une première fois ma procédure, il me renvoie 0, ce qui est l'état initial de mon item de menu (actif). Lorsque je lance une deuxième fois ma procédure, il me renvoie 3 (MF_Grayed | MF_Disabled), ce qui est l'état dans lequel est mon item puisque je viens de le modifier. Le seul truc, c'est que mon item est toujours actif et non grisé... J'ai même mis un drawmenubar(hwnd), mais visuellement et fonctionnellement mon item est toujours actif.
__________________
Commencez toujours par là : et puis n'hésitez à passer par là : ou par un autre moteur de recherche...Pas de question par MP s'il vous plait. Le forum est fait pour cela... Make it real not fantasy |
|
|
00
|
|
|
#3 |
|
Expert Confirmé
![]() ![]() Claude Développeur informatique Inscription : juin 2003 Messages : 1 807 ![]() |
Je n'ai pas trouvé la solution que je souhaitais, alors j'en ai utilisé une autre : je supprime les items de menu :
Code :
RetourFonction = API("USER32","RemoveMenu",HandleSousMenu,PositionItem,0x0400)
__________________
Commencez toujours par là : et puis n'hésitez à passer par là : ou par un autre moteur de recherche...Pas de question par MP s'il vous plait. Le forum est fait pour cela... Make it real not fantasy |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com