Je ne connaissais pas le code de PlanetCodeSource mais il semble être plus complet que le mien.
En espérant qe ça t'aidera.
++
Moustachu
jbarras
Messages postés2Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention21 février 2008 21 févr. 2008 à 14:43
Bonjour,
Sur certains serveurs Windows 2003, impossible de le faire fonctionner. Alors que sur d'autres cela fonctionne à merveille. Par contre, aucun soucis sous XP ;-)
Je pense que le problème rencontré sur ces serveurs, est qu'il me manque un/plusieurs fichiers nécessaires au bon fonctionnement de HookMenu.
Quels fichiers doivent être inclus dans le programme d'installation en plus de l'OCX de HookMenu pour qu'il puisse fonctionner ?
Merci !
cs_moustachu
Messages postés1079Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention 1 janvier 2012 14 mai 2007 à 12:21
Désolé pour la réponse tardive. Je n'avais pas vu passer vos messages.
jbarras>J'ai Server 2003, je ne peux pas te dire.
eliache>Pour le problème du menu provenant d'une icone (mdichild ou mdi) j'ai remarqué aussi, mais je ne sais pas encore le corriger. Pour HookMenu sur un menu créé par code, j'ai peur que ça ne marche pas
++
Moustachu
eliache
Messages postés3Date d'inscriptionmardi 28 mars 2006StatutMembreDernière intervention25 avril 2007 25 avril 2007 à 17:08
si quelqu'un peut m'aider ?
est ce qu'on peut utiliser HookMenu sur un menu créer par code?
eliache
Messages postés3Date d'inscriptionmardi 28 mars 2006StatutMembreDernière intervention25 avril 2007 25 avril 2007 à 17:01
il y a toujour un problème au niveau du menu afficher lors du click sur l'icône d'une feuille mdichild
jbarras
Messages postés2Date d'inscriptionlundi 22 janvier 2007StatutMembreDernière intervention21 février 2008 24 avril 2007 à 10:41
Bonjour,
Ce contrôle est absolument génial.
Malheureusement si je l'exécute sur un serveur Windows Server 2003, il plante.
Quelqu'un a déjà eu ce problème ?
Merci !
cs_moustachu
Messages postés1079Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention 1 janvier 2012 10 mai 2006 à 08:27
Bonjour Globule,
Sur NT4 ou 95, effectivement cela plantera pour le look 2003 mais pas le look office XP. Je viens de vérifier, l'auteur initial de la source utilise des API absentes de NT4 et W95 (dégradé). Je n'ai fait qu'utiliser les fonctions existantes. Je ne crois pas qu'avec la SP6 cela règle le problème
Pour ces OS, je pense qu'il faudrait remplacer l'appel de l'API FillGradient par une procédure perso de dégradé. Il y en a à la pelle sur le site.
95, je ne sais pas s'il reste grand monde. NT4, c'est clair, y'en a un paquet : je travaille dessus.
++
Moustachu
cs_globule
Messages postés327Date d'inscriptionmardi 8 octobre 2002StatutMembreDernière intervention 6 octobre 2010 9 mai 2006 à 12:17
Que se passe t'il si j'utilise se composant sur un poste en 95 ou sur un NT 4 qui n'à pas de SP6 ? Ca plante ou ca affiche les menus sans le look office ? Cette source me tente, mais je ne veux pas risquer de planter tous mes utilisateurs en NT ou 95 (et oui, il y en a encore beaucoup !)
cs_moustachu
Messages postés1079Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention 1 janvier 2012 24 sept. 2005 à 18:02
C'est certains que je ne suis pas le seul à y avoir pensé. Sur NT4, ça doit fonctionner normalement.
A+
Moutachu
cs_sadate
Messages postés30Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention11 décembre 2009 16 sept. 2005 à 18:39
Je viens de trouver une version 1.5
je vais essayer ça.
cs_sadate
Messages postés30Date d'inscriptionmercredi 18 décembre 2002StatutMembreDernière intervention11 décembre 2009 16 sept. 2005 à 17:13
Les menus ne fonctionne pas sur NT4 pourquoi???
bouv
Messages postés1411Date d'inscriptionmercredi 6 août 2003StatutMembreDernière intervention 3 mars 20191 28 févr. 2005 à 17:37
Super sympa !!!
2 suggestions :
- Pourrai tu fournir le reste de la source originale (neccessaire) pour ceux qui ne l'ont pas
- Tu devrai peux etre renommer le nom de l'ocx (ex : HookMenu2003.ocx) pour ne pas ecraser l'originale ainsi que le titre de l'application dans les propriétés du projet pour éviter toute confusion.
Bonne prog
++
cs_moustachu
Messages postés1079Date d'inscriptionjeudi 14 novembre 2002StatutMembreDernière intervention 1 janvier 2012 28 févr. 2005 à 17:18
Merci beaucoup,
Je regarde brièvement mais d'après les commentaires de ton code, cela va également modifier les sous-menu ce que je ne souhaite pas.
Je garde ça sous le coude.
++
Moustachu
cs_starfighter
Messages postés90Date d'inscriptionmardi 18 mars 2003StatutMembreDernière intervention28 février 2005 28 févr. 2005 à 17:14
Salut,
Pour le reste du menu essaye cela:
Private Sub SetMenuBackgroundColor(ByVal hMenu As Long)
Dim ret As Long 'Variable to hold return values from GetMenuInfo and SetMenuInfo
Dim hBrush As Long 'Variable to hold the handle to the background brush we are going to create
Dim lbBrushInfo As LOGBRUSH 'Variable to hold the information to pass to the CreateBrushIndirect API
Dim miMenuInfo As tagMENUINFO 'Variable to hold the menu info
lbBrushInfo.lbStyle = BS_SOLID 'Set our brush type to solid
lbBrushInfo.lbColor = mBackgroundColor 'Couleur du Fond du reste du menu
lbBrushInfo.lbHatch = 0 'This value is ignored I set it to 0 to make sure nothing weird will happen
hBrush = CreateBrushIndirect(lbBrushInfo) 'We create our brush
miMenuInfo.cbSize = Len(miMenuInfo) 'Set the MenuInfo structure size so that we don't get errors
ret = GetMenuInfo(hMenu, miMenuInfo) 'Go and get the actual menu info should return non-zero if successful
miMenuInfo.fMask = MIM_APPLYTOSUBMENUS Or MIM_BACKGROUND 'Set the mask for the changes (changing the background for menu and all sub-menus)
miMenuInfo.hbrBack = hBrush 'Assign our brush to the menu info
ret = SetMenuInfo(hMenu, miMenuInfo) 'Write our info back to the menu and we're done. (should return non-zero if successful)
End Sub
22 févr. 2008 à 06:47
Tu peux trouver une autre version ici :
http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=49985&lngWId=1
Sur VBfrance, le code d'origine avait été posté ici :
http://www.vbfrance.com/codes/SOURCE-HOOKMENU-CONVERTIT-MENU-MENU-XP_5513.aspx
Je ne connaissais pas le code de PlanetCodeSource mais il semble être plus complet que le mien.
En espérant qe ça t'aidera.
++
Moustachu
21 févr. 2008 à 14:43
Sur certains serveurs Windows 2003, impossible de le faire fonctionner. Alors que sur d'autres cela fonctionne à merveille. Par contre, aucun soucis sous XP ;-)
Je pense que le problème rencontré sur ces serveurs, est qu'il me manque un/plusieurs fichiers nécessaires au bon fonctionnement de HookMenu.
Quels fichiers doivent être inclus dans le programme d'installation en plus de l'OCX de HookMenu pour qu'il puisse fonctionner ?
Merci !
14 mai 2007 à 12:21
jbarras>J'ai Server 2003, je ne peux pas te dire.
eliache>Pour le problème du menu provenant d'une icone (mdichild ou mdi) j'ai remarqué aussi, mais je ne sais pas encore le corriger. Pour HookMenu sur un menu créé par code, j'ai peur que ça ne marche pas
++
Moustachu
25 avril 2007 à 17:08
est ce qu'on peut utiliser HookMenu sur un menu créer par code?
25 avril 2007 à 17:01
24 avril 2007 à 10:41
Ce contrôle est absolument génial.
Malheureusement si je l'exécute sur un serveur Windows Server 2003, il plante.
Quelqu'un a déjà eu ce problème ?
Merci !
10 mai 2006 à 08:27
Sur NT4 ou 95, effectivement cela plantera pour le look 2003 mais pas le look office XP. Je viens de vérifier, l'auteur initial de la source utilise des API absentes de NT4 et W95 (dégradé). Je n'ai fait qu'utiliser les fonctions existantes. Je ne crois pas qu'avec la SP6 cela règle le problème
Pour ces OS, je pense qu'il faudrait remplacer l'appel de l'API FillGradient par une procédure perso de dégradé. Il y en a à la pelle sur le site.
95, je ne sais pas s'il reste grand monde. NT4, c'est clair, y'en a un paquet : je travaille dessus.
++
Moustachu
9 mai 2006 à 12:17
24 sept. 2005 à 18:02
A+
Moutachu
16 sept. 2005 à 18:39
je vais essayer ça.
http://pscode.com/vb/scripts/ShowCode.asp?txtCodeId=49985&lngWId=1
16 sept. 2005 à 17:13
28 févr. 2005 à 17:37
2 suggestions :
- Pourrai tu fournir le reste de la source originale (neccessaire) pour ceux qui ne l'ont pas
- Tu devrai peux etre renommer le nom de l'ocx (ex : HookMenu2003.ocx) pour ne pas ecraser l'originale ainsi que le titre de l'application dans les propriétés du projet pour éviter toute confusion.
Bonne prog
++
28 févr. 2005 à 17:18
Je regarde brièvement mais d'après les commentaires de ton code, cela va également modifier les sous-menu ce que je ne souhaite pas.
Je garde ça sous le coude.
++
Moustachu
28 févr. 2005 à 17:14
Pour le reste du menu essaye cela: