AutoItSetOption("MustDeclareVars", 1) #include #include #include #include #include Global $uiDlg = GUICreate("Toolbar trial", 245, 137, 207, 121) Global $MenuItem2 = GUICtrlCreateMenu("&File") Global $miBeep = GUICtrlCreateMenuItem("Beep", $MenuItem2) Global $btnBeep = GUICtrlCreateButton("Beep higher", 72, 64, 105, 25) GUISetState(@SW_SHOW) ; Start with a default toolbar Global $hToolbar = _GUICtrlToolbar_Create($uiDlg) ; I need an image list. I can make it out ; of a wide bit map, or I can populate it with standard images from comctl32.dll ; Let's start with some standard button images, say Open & Close Global $nButtons = 1 ; I am confused by this as we appear to be adding a whole set of button images Global $hInst = -1 ; This means use a system set Global $iLoc = _GUICtrlToolbar_AddBitmap($hToolbar, $nButtons, $hInst, $IDB_STD_SMALL_COLOR) Global $TBBeep = 1001 _GUICtrlToolbar_AddButton($hToolbar, $miBeep, $STD_FILEOPEN) _GUICtrlToolbar_AddButton($hToolbar, $TBBeep, $STD_DELETE) GuiRegisterMsg($WM_COMMAND, MY_WM_COMMAND) Global $nMsg While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $miBeep Beep(300, 200) Case $btnBeep Beep(400, 200) Case $TBBeep Beep(200, 200) Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd ;-------------------------------------------------------------- Func MY_WM_COMMAND($hWnd, $iMsg, $wParam, $lParam) Local $nNotifyCode = BitShift($wParam, 16) Local $nID = BitAND($wParam, 0x0000FFFF) Local $hCtrl = $lParam MsgBox($MB_SYSTEMMODAL, "MY_WM_COMMAND", "GUIHWnd" & @TAB & ":" & $hWnd & @CRLF & _ "MsgID" & @TAB & ":" & $iMsg & @CRLF & _ "wParam" & @TAB & ":" & $wParam & @CRLF & _ "lParam" & @TAB & ":" & $lParam & @CRLF & @CRLF & _ "WM_COMMAND - Infos:" & @CRLF & _ "-----------------------------" & @CRLF & _ "Code" & @TAB & ":" & $nNotifyCode & @CRLF & _ "CtrlID" & @TAB & ":" & $nID & @CRLF & _ "CtrlHWnd" & @TAB & ":" & $hCtrl) Return $GUI_RUNDEFMSG EndFunc