调用WIN API实现在菜单项中加入图标

本文介绍如何利用Windows API在菜单项中插入图标。通过声明并调用GetMenu, GetSubMenu, SetMenuItemBitmaps函数,结合MF_BYPOSITION常量,可以将Image控件中的图片设置为菜单项的图标。详细步骤包括复制API声明,放置图片,以及定位并修改菜单结构。" 109359405,8828609,解密程序员段子:你能理解几个?,"['程序员文化', '编程笑话', '技术幽默']
摘要由CSDN通过智能技术生成

Option Explicit  '在模块级别中使用,强制显式声明模块中的所有变量。
 '函数可以查 意思很明确(根据英文意思)
 Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private 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
Dim pmenu, smenu, a As Long
Const MF_BYPOSITION = &H400& '这个参数很重要,是通过位置来的

Private Sub Form_Load()
pmenu = GetMenu(hwnd) 'hwnd为固定的,现在还不需要知道它是什么
smenu = GetSubMenu(pmenu, 0) '子菜单是从零开始的
a = SetMenuItemBitmaps(smenu, 0, MF_BYPOSITION, Image1.Picture, Image1.Picture) '1
a = SetMenuItemBitmaps(smenu, 1, MF_BYPOSITION, Image2.Picture, Image1.Picture) '2
a = SetMenuItemBitmaps(smenu, 3, MF_B

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值