legend Posted January 14, 2015 Posted January 14, 2015 Hi, Here's the code from the example on how to use GUIAccelerators, I don't quite understand how the aArray works, I want to only have 1 accelerator. This is what I tried: Dim $AccelKeys[0][1]=["{ENTER}"] But as I don't quite understand the [0][1] I'm having problems getting it to work expandcollapse popup#include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> Example() Func Example() GUICreate("Custom MsgBox", 225, 80) GUICtrlCreateLabel("Please select a button.", 10, 10) Local $idYes = GUICtrlCreateButton("Yes", 10, 50, 65, 25) Local $idNo = GUICtrlCreateButton("No", 80, 50, 65, 25) Local $idExit = GUICtrlCreateButton("Exit", 150, 50, 65, 25) ; Set GUIAccelerators for the button controlIDs, these being Ctrl + y and Ctrl + n Local $aAccelKeys[2][2] = [["^y", $idYes],["^n", $idNo]] GUISetAccelerators($aAccelKeys) GUISetState(@SW_SHOW) ; Display the GUI. While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE MsgBox($MB_SYSTEMMODAL, "You selected", "Close") ExitLoop Case $idYes MsgBox($MB_SYSTEMMODAL, "You selected", "Yes") ; Displays if the button was selected or the hotkey combination Ctrl + y was pressed. Case $idNo MsgBox($MB_SYSTEMMODAL, "You selected", "No") ; Displays if the button was selected or the hotkey combination Ctrl + n was pressed. Case $idExit MsgBox($MB_SYSTEMMODAL, "You selected", "Exit") ExitLoop EndSwitch WEnd GUIDelete() ; Delete the GUI. EndFunc ;==>Example
legend Posted January 14, 2015 Author Posted January 14, 2015 I made a mistake by posting it in the Examples category, Can someone please move it to: General Help and Support
Moderators Melba23 Posted January 14, 2015 Moderators Posted January 14, 2015 legend,Thread moved. You need to correctly dimension the array, which has as many rows as accelerator keys and always 2 columns. In the example there are 2 keysLocal $aAccelKeys[2][2] = [["^y", $idYes],["^n", $idNo]] ; 2 rows and 2 columnsand the array looks like this:Row Key ControlID 0 ^y $idYes 1 ^n $idNoRemember that AutoIt arrays start at 0. So if you want only one key, you would use:Local $AccelKeys[1][2]=["{ENTER}", $idControlID] ; 1 row, but still 2 columnsClearer now? M23P.S. Dim is deprecated and you should use Local /Global to specifically sett the scope of the variable - see the Variables - using Global, Local and ByRef tutorial in the Wiki for details. Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
legend Posted January 14, 2015 Author Posted January 14, 2015 Hi Melba, thank's a lot for the explanation, that helped me understand how it works
Moderators Melba23 Posted January 14, 2015 Moderators Posted January 14, 2015 legend,Glad I could help. M23 Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind Open spoiler to see my UDFs: Spoiler ArrayMultiColSort ---- Sort arrays on multiple columnsChooseFileFolder ---- Single and multiple selections from specified path treeview listingDate_Time_Convert -- Easily convert date/time formats, including the language usedExtMsgBox --------- A highly customisable replacement for MsgBoxGUIExtender -------- Extend and retract multiple sections within a GUIGUIFrame ---------- Subdivide GUIs into many adjustable framesGUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView itemsGUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeViewMarquee ----------- Scrolling tickertape GUIsNoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxesNotify ------------- Small notifications on the edge of the displayScrollbars ----------Automatically sized scrollbars with a single commandStringSize ---------- Automatically size controls to fit textToast -------------- Small GUIs which pop out of the notification area
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now