1、先给分
  2、留Email
  3、收信   最Cool的菜单源码,甚至包括XP的菜单!

解决方案 »

  1.   

    'menu bitmap 为菜单加上位图
        Public Declare Function SetMenuItemBitmaps Lib "user32" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal hBitmapUnchecked As Long, ByVal hBitmapChecked As Long) As Long
        Public Declare Function GetMenu Lib "user32" (ByVal hWnd As Long) As Long
        Public Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
        Public Const MF_BYCOMMAND = &H0&
        Public Const MF_BYPOSITION = &H400&SetMenuItemBitmaps lngMenuHwnd(1), 0, MF_BYPOSITION, iml.ListImages("NewProject").Picture.Handle, iml.ListImages("NewProject").Picture.Handle1.得到菜单项的handle,
    2.得到你想画图的子菜单项的handle
    3.在菜单上画图标。
    如果不够清楚,我可以给你个例子
      

  2.   

    fishzone(阿愚): 请给我一个例子,我正在琢磨这个呢,谢谢: [email protected]好像文字和位图不能同时显示... 用SetMeniItemBitmaps只能显示黑白的位图??The selected and clear bitmaps should be monochrome. The system uses the Boolean AND operator to combine bitmaps with the menu so that the white part becomes transparent and the black part becomes the menu-item color. If you use color bitmaps, the results may be undesirable. 
      

  3.   

    哈哈,高分就这么多人了!不跟你们争了,除非贴主有兴趣要前所未有的强大的菜单(多种样式,报刊xp style,图标菜单,自定义分隔栏,左边颜色条、文字与图标,选中菜单项渐变颜色,半透明,阴影,等等,等等,等等.....),已经组件化......:)
      

  4.   

    touguess(uguess):
      我的EMAIL:[email protected]
      

  5.   

    to:enmity(灵感之源)
      EMAIL给我吧。我再另开贴子给你分啦。
     EMAIL地址:[email protected]
      

  6.   

      1、先给分
      2、留Email
      3、收信   
      

  7.   

    不过这贴子的分要给uguess(uguess)先。
      

  8.   

    basey(杨不同) 
    例子我已经发给你了。
    “好像文字和位图不能同时显示... 用SetMeniItemBitmaps只能显示黑白的位图??”
    这两个现象没有。但是要求的尺寸太小。好像是13*15的,而且一定要bmp格式的。
      

  9.   

    多谢,收到. 我用SetMenuItemInfo() 在Win98下做的菜单没问题,在Win95和Win2000下只显示位图(Icon格式), 没有文字菜单,真是百思不得其解.btw: 菜单的字体怎么更改啊??