如何在菜单子菜单前加上图标????????

pengyou1hao 2003-12-08 09:11:05
如何在菜单子菜单前加上图标????????
...全文
99 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
y1g1y1 2003-12-08
  • 打赏
  • 举报
回复
http://ygyuan.yeah.net/
免费控件下载.

使用也简单,无须一行代码.
pengyou1hao 2003-12-08
  • 打赏
  • 举报
回复
smartxpmenu怎么用.请给代码???
pengyou1hao 2003-12-08
  • 打赏
  • 举报
回复
smartxpmenu控件在哪里?
fafan 2003-12-08
  • 打赏
  • 举报
回复
兄弟,能不能不用api
------------------
那就用控件吧
smartxpmenu
pengyou1hao 2003-12-08
  • 打赏
  • 举报
回复
兄弟,能不能不用api
kimurakenshin 2003-12-08
  • 打赏
  • 举报
回复
找到一个书上的小程序给你参考一下.
用到API函数.


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 GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Declare Function ModifyMenu Lib "user32" Alias "ModifyMenuA" (ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpString As Any) As Long
Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function CreateCompatibleBitmap Lib "gdi32" (ByVal hdc As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long

Const SRCCOPY = &HCC0020
Const MF_BITMAP = &H4&
Const MF_BYPOSITION = &H400&

Private Sub Form_Load()
Dim nLoopCtr As Integer
Dim lResult As Long
Dim hTempDC As Long
Dim nWidth As Long
Dim nHeight As Long
Dim lTempID As Long
Dim hMenuID As Long
Dim lItemCount As Long
Dim hBitmap As Long


nWidth = Pic.Width \ Screen.TwipsPerPixelX
nHeight = Pic.Height \ Screen.TwipsPerPixelY
hMenuID = GetSubMenu(GetMenu(Me.hwnd), 0)
hTempDC = CreateCompatibleDC(Pic.hdc)
For i = 0 To 1
hBitmap = CreateCompatibleBitmap(Pic.hdc, nWidth, nHeight)
lTempID = SelectObject(hTempDC, hBitmap)
lResult = BitBlt(hTempDC, 0, 0, nWidth, nHeight, Pic.hdc, 0, 0, SRCCOPY)
lTempID = SelectObject(hTempDC, lTempID)
M_Item1(i).Caption = ""
lResult = ModifyMenu(hMenuID, i, MF_BYPOSITION Or MF_BITMAP, GetMenuItemID(hMenuID, i), hBitmap)
Next i
lResult = DeleteDC(hTempDC)
End Sub

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧