Hi an alle,
kann man in Context Menüs Icons einbinden?
sowas wie hier?!?! (siehe anhang)
Hi an alle,
kann man in Context Menüs Icons einbinden?
sowas wie hier?!?! (siehe anhang)
Wenn du sowas meinst schon:
#include <GuiMenu.au3>
#include <GuiConstantsEx.au3>
#include <WinAPI.au3>
Opt('MustDeclareVars', 1)
[/autoit] [autoit][/autoit] [autoit]Global $iMemo
[/autoit] [autoit][/autoit] [autoit]_Main()
[/autoit] [autoit][/autoit] [autoit]Func _Main()
Local $hGUI, $hFile, $hEdit, $hHelp, $hMain, $hBmp1, $hBmp2
Local Enum $idNew = 1000, $idOpen, $idSave, $idExit, $idCut, $idCopy, $idPaste, $idAbout
; Create GUI
$hGUI = GUICreate("Menu", 400, 300)
; Create File menu
$hFile = _GUICtrlMenu_CreateMenu ()
_GUICtrlMenu_InsertMenuItem ($hFile, 0, "&New", $idNew)
_GUICtrlMenu_InsertMenuItem ($hFile, 1, "&Open", $idOpen)
_GUICtrlMenu_InsertMenuItem ($hFile, 2, "&Save", $idSave)
_GUICtrlMenu_InsertMenuItem ($hFile, 3, "", 0)
_GUICtrlMenu_InsertMenuItem ($hFile, 4, "E&xit", $idExit)
; Create Edit menu
$hEdit = _GUICtrlMenu_CreateMenu ()
_GUICtrlMenu_InsertMenuItem ($hEdit, 0, "&Cut", $idCut)
_GUICtrlMenu_InsertMenuItem ($hEdit, 1, "C&opy", $idCopy)
_GUICtrlMenu_InsertMenuItem ($hEdit, 2, "&Paste", $idPaste)
; Create Help menu
$hHelp = _GUICtrlMenu_CreateMenu ()
_GUICtrlMenu_InsertMenuItem ($hHelp, 0, "&About", $idAbout)
; Create Main menu
$hMain = _GUICtrlMenu_CreateMenu ()
_GUICtrlMenu_InsertMenuItem ($hMain, 0, "&File", 0, $hFile)
_GUICtrlMenu_InsertMenuItem ($hMain, 1, "&Edit", 0, $hEdit)
_GUICtrlMenu_InsertMenuItem ($hMain, 2, "&Help", 0, $hHelp)
; Set window menu
_GUICtrlMenu_SetMenu ($hGUI, $hMain)
; Create memo control
$iMemo = GUICtrlCreateEdit("", 2, 2, 396, 276, 0)
GUICtrlSetFont($iMemo, 9, 400, 0, "Courier New")
GUISetState()
; Set File menu checked/unchecked bitmaps
$hBmp1 = _WinAPI_CreateSolidBitmap ($hGUI, 0xFF0000, 11, 11)
$hBmp2 = _WinAPI_CreateSolidBitmap ($hGUI, 0x00FF00, 11, 11)
_GUICtrlMenu_SetItemBitmaps ($hFile, 0, $hBmp1, $hBmp2)
_GUICtrlMenu_SetItemBitmaps ($hFile, 1, $hBmp1, $hBmp2)
_GUICtrlMenu_SetItemBitmaps ($hFile, 2, $hBmp1, $hBmp2)
; Check Open menu item
_GUICtrlMenu_CheckMenuItem ($hFile, 1)
; Show that bitmap handles match
MemoWrite("Checked handle ......: 0x" & Hex($hBmp1))
MemoWrite("Unchecked handle ....: 0x" & Hex($hBmp2))
MemoWrite("Open checked handle .: 0x" & Hex(_GUICtrlMenu_GetItemBmpChecked ($hFile, 0)))
MemoWrite("Open unchecked handle: 0x" & Hex(_GUICtrlMenu_GetItemBmpUnchecked ($hFile, 0)))
; Loop until user exits
Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
EndFunc ;==>_Main
; Write message to memo
Func MemoWrite($sMessage)
GUICtrlSetData($iMemo, $sMessage & @CRLF, 1)
EndFunc ;==>MemoWrite
das sind aber farbige rechtecke und keine icons?!?! will sowas wie in dem screenshot aus dem ersten post... ist das nicht möglich?
such mal hier im forum nach "modernmenu". Denn ich habe so was ähnliches gefragt, das es für menuitem und traymenu war. Bin mir jetzt nicht sich ob es azch für contextmenu geht.
finde mit der sufu leider nichts? hast du vielleicht den link?
ModernMenu (GUI/Tray Menu with icons and colors)
vielen dank, funktioniert bestens die udf! bis jetzt noch keine probleme damit!
eine andere frage... wie kann ich meine dynamisch erstellten menüs wieder löschen, um speicher freizugeben?
[autoit]
Func _readProgrammsAndWrite()
_GUICtrlTreeView_DeleteAll($hTreeView)
$fileList=_FileListToArray(@ScriptDir & "\Programme\", "*", 2)
If @error=4 Then
MsgBox(0, "Fehler", "Keine Programm im Programmverzeichnis gefunden")
Else
Local $item[$fileList[0]]
Local $contextMenue[$fileList[0]]
Local $contextMenueItem[$fileList[0]]
For $i=1 To $fileList[0]
$item[$i-1]=GUICtrlCreateTreeViewItem($fileList[$i], $hTreeView)
GUICtrlSetOnEvent($item[$i-1], "_getProgrammAndWriteInfos")
$contextMenue[$i-1]=GUICtrlCreateContextMenu($item[$i-1])
$contextMenueItem[$i-1]=_GUICtrlCreateODMenuItem("Neue Version erzeugen", $contextMenue[$i-1], "shell32.dll", -55)
;$contextMenueItem[$i-1]=GUICtrlCreateMenuItem("Neue Version erzeugen", $contextMenue[$i-1])
GUICtrlSetOnEvent($contextMenueItem[$i-1], "_createNewVersionFromLast")
Next
EndIf
EndFunc