Hey,
gibt es eine Möglichkeit Icnos in ein ContextMenu zu setzen?
Ich hab schon mit Guictrlsetstate probiert und die modernmenu.au3 gilt nur für normales Menü bzw. Tray.
Hat das jemand schonmal hinbekommen?
Gruß Snify
Hey,
gibt es eine Möglichkeit Icnos in ein ContextMenu zu setzen?
Ich hab schon mit Guictrlsetstate probiert und die modernmenu.au3 gilt nur für normales Menü bzw. Tray.
Hat das jemand schonmal hinbekommen?
Gruß Snify
was meinst du mit context menü ? wenn man dateien rechtsklickt ?
Ne das Control selbst. (aber so sollte es auch aussehen ^^)
z.B.ich mache eine Listview und adde dann mit guictrlcreatecontextmenu das context menü.
Und jetzt jedes Item hat ein bestimmtes Icon (oder auch nicht)
_GUICtrlMenu_CreatePopup() sowie _GUICtrlMenu_TrackPopupMenu() in kombination mit _GUICtrlMenu_SetItemBmp sollten dir weiterhelfen.
#include <GuiMenu.au3>
#include <GuiConstantsEx.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit]Global Enum $idOpen = 1000, $idSave, $idInfo
[/autoit] [autoit][/autoit] [autoit]_Main()
[/autoit] [autoit][/autoit] [autoit]Func _Main()
Local $hGUI
; Create GUI
$hGUI = GUICreate("Menu", 400, 300)
GUISetState()
; Register message handlers
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")
GUIRegisterMsg($WM_CONTEXTMENU, "WM_CONTEXTMENU")
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc ;==>_Main
; Handle WM_COMMAND messages
Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
Switch $iwParam
Case $idOpen
_WinAPI_ShowMsg ("Open")
Case $idSave
_WinAPI_ShowMsg ("Save")
Case $idInfo
_WinAPI_ShowMsg ("Info")
EndSwitch
EndFunc ;==>WM_COMMAND
; Handle WM_CONTEXTMENU messages
Func WM_CONTEXTMENU($hWnd, $iMsg, $iwParam, $ilParam)
Local $hMenu
$hMenu = _GUICtrlMenu_CreatePopup ()
_GUICtrlMenu_InsertMenuItem ($hMenu, 0, "Open", $idOpen)
_GUICtrlMenu_InsertMenuItem ($hMenu, 1, "Save", $idSave)
_GUICtrlMenu_InsertMenuItem ($hMenu, 3, "", 0)
_GUICtrlMenu_InsertMenuItem ($hMenu, 3, "Info", $idInfo)
_GUICtrlMenu_SetItemBmp($hMenu,0, _WinAPI_CreateSolidBitmap ($hWnd, 0xFF0000, 11, 11))
_GUICtrlMenu_SetItemBmp($hMenu,1, _WinAPI_CreateSolidBitmap ($hWnd, 0xFFFF00, 11, 11))
_GUICtrlMenu_SetItemBmp($hMenu,3, _WinAPI_CreateSolidBitmap ($hWnd, 0x00FFFF, 11, 11))
_GUICtrlMenu_TrackPopupMenu ($hMenu, $iwParam)
_GUICtrlMenu_DestroyMenu ($hMenu)
Return True
EndFunc ;==>WM_CONTEXTMENU
Beispiel aus der Hilfe leicht abgeändert.
immerhin mal ein Anfang danke dir.
Ich schau mal was ich daraus machen kann.