右键菜单上怎么添加上图标
#include <GuiConstants.au3>$Gui = GUICreate("test")
$Edit = GUICtrlCreateEdit("", 20, 20)
$DummyMenu = GUICtrlCreateDummy()
$ContextMenu = GUICtrlCreateContextMenu($DummyMenu)
$MenuItem1 = GUICtrlCreateMenuItem("菜单1", $ContextMenu)
$MenuItem2 = GUICtrlCreateMenuItem("菜单2", $ContextMenu)
GUICtrlCreateMenuItem("", $ContextMenu)
$ExitMenuItem = GUICtrlCreateMenuItem("退出", $ContextMenu)
GUISetState()
While 1
$CurInfo = GUIGetCursorInfo($Gui)
$Msg = GUIGetMsg()
Select
Case $Msg = -3
Exit
Case $CurInfo = 1 And $CurInfo = $Edit
ShowMenu($Gui, $ContextMenu)
EndSelect
WEnd
; Show a menu in a given GUI window which belongs to a given GUI ctrl
Func ShowMenu($hWnd, $nContextID)
Local $hMenu = GUICtrlGetHandle($nContextID)
$arPos = MouseGetPos()
Local $x = $arPos
Local $y = $arPos
DllCall("user32.dll", "int", "TrackPopupMenuEx", "hwnd", $hMenu, "int", 0, "int", $x, "int", $y, "hwnd", $hWnd, "ptr", 0)
EndFunc 这个。。。不带图标的 _GUICtrlMenu_SetItemBmp 回复 3# veket_linux
不行呢,怎么回事 那是你技术还不行 去翻翻帮助文件吧 回复 5# veket_linux
图标关键是ico文件 回复 5# veket_linux
或者系统 shell32.dll 里面的 你有必要 玩下 图像列表(GuiImageList)
帮助文件里有 个函数 刚好 就有 加载 shell32.dll内的资源滴
_GUIImageList_AddIcon($hImage, @SystemDir & "\shell32.dll", 110)
站内搜索下 shell32 你会有收获滴 当然如果你看过 autoit include文件夹里的 源码可以直接去调api ExtractIconExW 回复 9# veket_linux
没有弄成功,哎 回复 9# veket_linux
谢谢,又学了一招:
很漂亮,涨知识了 涨知识,大家的力量是强大的 回复veket_linux
谢谢,又学了一招:
chzj589 发表于 2014-7-21 14:15 http://www.autoitx.com/images/common/back.gif
很明显,图标有难看的底色… 回复 14# afan
谢谢提醒
是用GUICtrlCreateMenuItem("", $MenuItem1)分隔造成的
页:
[1]
2