Glenac Posted February 5, 2013 Share Posted February 5, 2013 (edited) Hey everyone, I am wondering how can I set a GuiCtrlSetOnEvent on a GUICtlr stored in an array. What I want to do is creating 4 checkboxes with 2 subparams for each, and when a checkbox is checked, it unlocks subparams in the _getStates function. Here is my code: Dim $array[4][3] For $i = 0 To 3 $array[$i][0] = GUICtrlCreateCheckbox("Param" & $i + 1, $bLeft, $bTop) GUICtrlCreateLabel("SubParam2: ", $bLeft + 10, $bTop + 25, 100, 15) $array[$i][0] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetState($array[$i][0], $GUI_DISABLE) GUICtrlCreateLabel("SubParam2 : ", $bLeft + 10, $bTop + 50, 100, 15) $array[$i][1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15) GUICtrlSetState($array[$i][1], $GUI_DISABLE) ; HERE IS THE PROBLEM... GUICtrlSetOnEvent($array[$i][0], "_getStates") Next The problem is GUICtrlSetOnEvent( $array[$i][0] , "_getStates") does not work. It looks like my $array[0][0] does not return the correct ID. If I do a msg box on it, I get an int like 23. Is there any solution for this? Thanks in advance for the help. Best regards Edited February 5, 2013 by Glenac Link to comment Share on other sites More sharing options...
BrewManNH Posted February 6, 2013 Share Posted February 6, 2013 Why are you using a 2D array for this? A 1D array would work much better. Dim $array[3] $array[0] = GUICtrlCreateCheckbox("Param" & $i + 1, $bLeft, $bTop) GUICtrlSetOnEvent(-1, "your_function") GUICtrlCreateLabel("SubParam2: ", $bLeft + 10, $bTop + 25, 100, 15) $array[1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetOnEvent(-1, "your_function") GUICtrlSetState($array[$i][0], $GUI_DISABLE) GUICtrlCreateLabel("SubParam2 : ", $bLeft + 10, $bTop + 50, 100, 15) $array[2] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15) GUICtrlSetOnEvent(-1, "your_function") GUICtrlSetState($array[$i][1], $GUI_DISABLE) If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
Glenac Posted February 6, 2013 Author Share Posted February 6, 2013 Why are you using a 2D array for this? A 1D array would work much better. Dim $array[3] $array[0] = GUICtrlCreateCheckbox("Param" & $i + 1, $bLeft, $bTop) GUICtrlSetOnEvent(-1, "your_function") GUICtrlCreateLabel("SubParam2: ", $bLeft + 10, $bTop + 25, 100, 15) $array[1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetOnEvent(-1, "your_function") GUICtrlSetState($array[$i][0], $GUI_DISABLE) GUICtrlCreateLabel("SubParam2 : ", $bLeft + 10, $bTop + 50, 100, 15) $array[2] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15) GUICtrlSetOnEvent(-1, "your_function") GUICtrlSetState($array[$i][1], $GUI_DISABLE) Hi BrewMan, Thank you for your answer I'll try this within a minute. I was using 2D array because subparams are directly linked to the checkbox. When you I thought it would be easier for me to haves something like this which I would be able to access later because I know exactly what are corresponding the array key with. $array[0][0] ; => CheckBox state (checked / unchecked) $array[0][1] ; => SubParam 1 $array[0][2] ; => SubParam 2 The SetOnEvent must be binded only to the checkbox only, not on the subparams. But Im a PHP developer, that may explain why I have been thinking this way. Glen Link to comment Share on other sites More sharing options...
Glenac Posted February 6, 2013 Author Share Posted February 6, 2013 (edited) Alright,Found the solution:Dim $array[4][3] For $i = 0 To 3 $array[$i][0] = GUICtrlCreateCheckbox("Param" & $i + 1, $bLeft, $bTop) GUICtrlSetOnEvent(-1, "_getStates") ; This is how it worked, using -1 directly after the declaration instead of $array[$i][0] GUICtrlCreateLabel("SubParam2: ", $bLeft + 10, $bTop + 25, 100, 15) $array[$i][0] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetState($array[$i][0], $GUI_DISABLE) GUICtrlCreateLabel("SubParam2 : ", $bLeft + 10, $bTop + 50, 100, 15) $array[$i][1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15) GUICtrlSetState($array[$i][1], $GUI_DISABLE) NextThanks anyway Regards,Glenac Edited February 6, 2013 by Glenac Link to comment Share on other sites More sharing options...
nitekram Posted February 6, 2013 Share Posted February 6, 2013 I am not sure your example will work - or will work the way you have planned. Yet I am not really sure what you have planned? But in your code you are going to overwrite the first paramater with the second? Maybe you posted wrong code? 2¢ All by me:"Sometimes you have to go back to where you started, to get to where you want to go." "Everybody catches up with everyone, eventually" "As you teach others, you are really teaching yourself." From my dad "Do not worry about yesterday, as the only thing that you can control is tomorrow." WIKI | Tabs; | Arrays; | Strings | Wiki Arrays | How to ask a Question | Forum Search | FAQ | Tutorials | Original FAQ | ONLINE HELP | UDF's Wiki | AutoIt PDF AutoIt Snippets | Multple Guis | Interrupting a running function | Another Send StringRegExp | StringRegExp Help | RegEXTester | REG TUTOR | Reg TUTOT 2 AutoItSetOption | Macros | AutoIt Snippets | Wrapper | Autoit Docs SCITE | SciteJump | BB | MyTopics | Programming | UDFs | AutoIt 123 | UDFs Form | UDF Learning to script | Tutorials | Documentation | IE.AU3 | Games? | FreeSoftware | Path_Online | Core Language Programming Tips Excel Changes ControlHover.UDF GDI_Plus Draw_On_Screen GDI Basics GDI_More_Basics GDI Rotate GDI Graph GDI CheckExistingItems GDI Trajectory Replace $ghGDIPDll with $__g_hGDIPDll DLL 101? Array via Object GDI Swimlane GDI Plus French 101 Site GDI Examples UEZ GDI Basic Clock GDI Detection Ternary operator Link to comment Share on other sites More sharing options...
BrewManNH Posted February 6, 2013 Share Posted February 6, 2013 (edited) Hi BrewMan,Thank you for your answer I'll try this within a minute.I was using 2D array because subparams are directly linked to the checkbox. When youWhat are you trying to say here because I'm not getting where you're going?Perhaps if you posted a working script I could take a look at it to see what exactly you're trying to do, because your snippet isn't going to work at all like you're hoping it will.I thought it would be easier for me to haves something like this which I would be able to access later because I know exactly what are corresponding the array key with.The SetOnEvent must be binded only to the checkbox only, not on the subparams. But Im a PHP developer, that may explain why I have been thinking this way.GlenAs nitekram said, you're overwriting the first array element further down in the loop, so you're losing whatever it held before. What is a subparam, and what does the checkbox have to do with it? The code I posted, while incomplete will assign the control ids, returned by the control creation functions, to an array element, and also sets the onevent function to that control. Although, if you're using OnEvent you don't really need the control ID unless you're going to be accessing them some other way, in which case, you probably don't want an onevent function tied to them.In any case, without knowing what it is you're doing in the script, it's practically impossible to know how to tell what you'd need for the controls. Edited February 6, 2013 by BrewManNH If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag GudeHow to ask questions the smart way! I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from. Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays. - ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script. - Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label. - _FileGetProperty - Retrieve the properties of a file - SciTE Toolbar - A toolbar demo for use with the SciTE editor - GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI. - Latin Square password generator Link to comment Share on other sites More sharing options...
nitekram Posted February 6, 2013 Share Posted February 6, 2013 (edited) Does this work? expandcollapse popup#include <GUIConstantsEx.au3> Opt("GUIOnEventMode", 1) Dim $array[4][3] Local $bLeft = 5 Local $bTop = 5 GUICreate("My GUI", 400, 400) ; will create a dialog box that when displayed is centered GUISetOnEvent($GUI_EVENT_CLOSE, "_getStates") GUISetOnEvent($GUI_EVENT_MINIMIZE, "_getStates") GUISetOnEvent($GUI_EVENT_RESTORE, "_getStates") For $i = 0 To 3 $array[$i][0] = GUICtrlCreateCheckbox("Param" & $i + 1, $bLeft, $bTop) GUICtrlCreateLabel("SubParam2: ", $bLeft + 75, $bTop) $array[$i][1] = GUICtrlCreateInput("", $bLeft + 150, $bTop) ;GUICtrlSetState($array[$i][0], $GUI_DISABLE) GUICtrlCreateLabel("SubParam3 : ", $bLeft + 225, $bTop) $array[$i][2] = GUICtrlCreateInput("", $bLeft + 300, $bTop) ;GUICtrlSetState($array[$i][1], $GUI_DISABLE) ;$bLeft += 5 $bTop += 25 ; HERE IS THE PROBLEM... GUICtrlSetOnEvent($array[$i][0], "_getStates") Next GUISetState(@SW_SHOW) ; will display an empty dialog box While 1 Sleep(20) WEnd Func _getStates() Select Case @GUI_CtrlId = $GUI_EVENT_CLOSE MsgBox(0, "Close Pressed", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle) Exit Case @GUI_CtrlId = $GUI_EVENT_MINIMIZE MsgBox(0, "Window Minimized", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle) Case @GUI_CtrlId = $GUI_EVENT_RESTORE MsgBox(0, "Window Restored", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle) Case Else ;MsgBox('', '@GUI_CtrlId', @GUI_CtrlId) For $x = 0 To 3 If @GUI_CtrlId = $array[$x][0] Then MsgBox('', 'CheckBox ' & $x + 1, 'Param2 = ' & GUICtrlRead($array[$x][1]) & ' ' & 'Param3 = ' & GUICtrlRead($array[$x][2])) EndIf Next EndSelect EndFunc ;==>_getStates EDIT changed the code to search all check boxes in a loop Edited February 6, 2013 by nitekram 2¢ All by me:"Sometimes you have to go back to where you started, to get to where you want to go." "Everybody catches up with everyone, eventually" "As you teach others, you are really teaching yourself." From my dad "Do not worry about yesterday, as the only thing that you can control is tomorrow." WIKI | Tabs; | Arrays; | Strings | Wiki Arrays | How to ask a Question | Forum Search | FAQ | Tutorials | Original FAQ | ONLINE HELP | UDF's Wiki | AutoIt PDF AutoIt Snippets | Multple Guis | Interrupting a running function | Another Send StringRegExp | StringRegExp Help | RegEXTester | REG TUTOR | Reg TUTOT 2 AutoItSetOption | Macros | AutoIt Snippets | Wrapper | Autoit Docs SCITE | SciteJump | BB | MyTopics | Programming | UDFs | AutoIt 123 | UDFs Form | UDF Learning to script | Tutorials | Documentation | IE.AU3 | Games? | FreeSoftware | Path_Online | Core Language Programming Tips Excel Changes ControlHover.UDF GDI_Plus Draw_On_Screen GDI Basics GDI_More_Basics GDI Rotate GDI Graph GDI CheckExistingItems GDI Trajectory Replace $ghGDIPDll with $__g_hGDIPDll DLL 101? Array via Object GDI Swimlane GDI Plus French 101 Site GDI Examples UEZ GDI Basic Clock GDI Detection Ternary operator Link to comment Share on other sites More sharing options...
Glenac Posted February 6, 2013 Author Share Posted February 6, 2013 Hey guys,thanks for your time. Yes there was an error with my arrays.Here is the correct version which is working:Dim $array[4][3] ; $array[0][0] => active state (checked or not) ; $array[0][1] => Key ; $array[0][2] => Delay For $i = 0 To UBound($buff)-1 $array[$i][0] = GUICtrlCreateCheckbox("Action " & $i + 1, $bLeft, $bTop) GUICtrlSetOnEvent(-1, "_activebuff") GUICtrlCreateLabel("Key : ", $bLeft + 10, $bTop + 25, 100, 15) $array[$i][1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetState($buff[$i][1], $GUI_DISABLE) GUICtrlCreateLabel("Delay (in ms) : ", $bLeft + 10, $bTop + 50, 100, 15) $array[$i][2] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15) GUICtrlSetState($buff[$i][2], $GUI_DISABLE) NextHere is the result:All fields "Key" and "Delay" are disabled until user check the "Action" box corresponding.I wanted it to be dynamic just in case I need to add more actions.Thanks again. Link to comment Share on other sites More sharing options...
nitekram Posted February 6, 2013 Share Posted February 6, 2013 (edited) I am not sure if you have fixed your issue or not, but one thing would help - if you would give us a workable code to work with. You keep giving us a bit of your code, but your code is not working as posted. And though, you may have other code that makes it work - we do not see that. Your posted code has two different arrays, which looks like there is code that is missing. Create a workable code and post it - working and stand alone, and maybe someone can see what you are talking about.But this, besides the format, does what I think you were/are trying to do???Edit - changed formatEdit 2 - Fixed code to match what OP wanted - addedIf GUICtrlRead($array[$x][0]) = $GUI_CHECKED Then GUICtrlSetState($array[$x][1], $GUI_ENABLE) GUICtrlSetState($array[$x][2], $GUI_ENABLE) Else GUICtrlSetState($array[$x][1], $GUI_DISABLE) GUICtrlSetState($array[$x][2], $GUI_DISABLE) EndIfexpandcollapse popup#include <GUIConstantsEx.au3> Opt("GUIOnEventMode", 1) Dim $array[4][3] Local $bLeft = 5 Local $bTop = 5 GUICreate("My GUI", 425, 200) ; will create a dialog box that when displayed is centered GUISetOnEvent($GUI_EVENT_CLOSE, "_getStates") GUISetOnEvent($GUI_EVENT_MINIMIZE, "_getStates") GUISetOnEvent($GUI_EVENT_RESTORE, "_getStates") For $i = 0 To 3 ;$i = 0 $array[$i][0] = GUICtrlCreateCheckbox("Action" & $i + 1, $bLeft, $bTop) GUICtrlCreateLabel("Key:", $bLeft + 10, $bTop + 25) $array[$i][1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 100) GUICtrlSetState($array[$i][1], $GUI_DISABLE) ;#cs GUICtrlCreateLabel("Delay (in ms):", $bLeft + 10, $bTop + 50) $array[$i][2] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 100) GUICtrlSetState($array[$i][2], $GUI_DISABLE) ;#ce Switch $i Case 0 ; 2 $bLeft = 230 $bTop = 0 Case 1 ; 3 $bLeft = 5 $bTop = 105 Case 2 ; 4 $bLeft = 230 $bTop = 105 EndSwitch ; HERE IS THE PROBLEM... GUICtrlSetOnEvent($array[$i][0], "_getStates") Next GUISetState(@SW_SHOW) ; will display an empty dialog box While 1 Sleep(20) WEnd Func _getStates() Select Case @GUI_CtrlId = $GUI_EVENT_CLOSE ;MsgBox(0, "Close Pressed", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle) Exit Case @GUI_CtrlId = $GUI_EVENT_MINIMIZE ;MsgBox(0, "Window Minimized", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle) Case @GUI_CtrlId = $GUI_EVENT_RESTORE ;MsgBox(0, "Window Restored", "ID=" & @GUI_CtrlId & " WinHandle=" & @GUI_WinHandle) Case Else ;MsgBox('', '@GUI_CtrlId', @GUI_CtrlId) For $x = 0 To 3 If @GUI_CtrlId = $array[$x][0] Then ;MsgBox('', 'CheckBox ' & $x + 1, 'Param2 = ' & GUICtrlRead($array[$x][1]) & ' ' & 'Param3 = ' & GUICtrlRead($array[$x][2])) If GUICtrlRead($array[$x][0]) = $GUI_CHECKED Then GUICtrlSetState($array[$x][1], $GUI_ENABLE) GUICtrlSetState($array[$x][2], $GUI_ENABLE) Else GUICtrlSetState($array[$x][1], $GUI_DISABLE) GUICtrlSetState($array[$x][2], $GUI_DISABLE) EndIf EndIf Next EndSelect EndFunc ;==>_getStates Edited February 7, 2013 by nitekram 2¢ All by me:"Sometimes you have to go back to where you started, to get to where you want to go." "Everybody catches up with everyone, eventually" "As you teach others, you are really teaching yourself." From my dad "Do not worry about yesterday, as the only thing that you can control is tomorrow." WIKI | Tabs; | Arrays; | Strings | Wiki Arrays | How to ask a Question | Forum Search | FAQ | Tutorials | Original FAQ | ONLINE HELP | UDF's Wiki | AutoIt PDF AutoIt Snippets | Multple Guis | Interrupting a running function | Another Send StringRegExp | StringRegExp Help | RegEXTester | REG TUTOR | Reg TUTOT 2 AutoItSetOption | Macros | AutoIt Snippets | Wrapper | Autoit Docs SCITE | SciteJump | BB | MyTopics | Programming | UDFs | AutoIt 123 | UDFs Form | UDF Learning to script | Tutorials | Documentation | IE.AU3 | Games? | FreeSoftware | Path_Online | Core Language Programming Tips Excel Changes ControlHover.UDF GDI_Plus Draw_On_Screen GDI Basics GDI_More_Basics GDI Rotate GDI Graph GDI CheckExistingItems GDI Trajectory Replace $ghGDIPDll with $__g_hGDIPDll DLL 101? Array via Object GDI Swimlane GDI Plus French 101 Site GDI Examples UEZ GDI Basic Clock GDI Detection Ternary operator Link to comment Share on other sites More sharing options...
Glenac Posted February 7, 2013 Author Share Posted February 7, 2013 Hi, Sorry, for the errors and the wrong copy/paste. Lack of sleep these last few days... Here is a working code: expandcollapse popup#include Opt("GUIOnEventMode", 1) Global $guiWidth = 500 Global $guiHeght = 500 Global $buff[4][3] GUICreate("", $guiWidth, $guiHeght) GUICtrlCreateLabel("", $guiWidth * 28 / 100, 8, $guiWidth, 17) GUICtrlCreateTab(2, 25, $guiWidth - 4, $guiHeght - 27) GUICtrlCreateTabItem("Buffs") ESBTab() GUICtrlCreateTabItem("") GUISetState() GUISetOnEvent($GUI_EVENT_CLOSE, "_Terminate") While 1 Sleep(100) WEnd Func ESBTab() Local $left = 30 Local $top = 60 Local $ESBLeft = $left + 15 Local $ESBLeft2 = $ESBLeft + 110 Local $ESBTop = $top + 25 GUICtrlCreateGroup("Buffs :", $left, $ESBTop, $guiWidth - 60, 250) For $i = 0 To UBound($buff, 1) - 1 Local $bTop = $ESBTop Local $bLeft = $left + 30 Switch $i Case 0 $bTop += 35 Case 1 $bTop += 35 $bLeft += 225 Case 2 $bTop += 120 Case 3 $bTop += 120 $bLeft += 225 EndSwitch $buff[$i][0] = GUICtrlCreateCheckbox("Buff " & $i + 1, $bLeft, $bTop) GUICtrlSetOnEvent($buff[$i][0], "_activebuff") GUICtrlCreateLabel("Key : ", $bLeft + 10, $bTop + 25, 50, 15) $buff[$i][1] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetState($buff[$i][1], $GUI_DISABLE) GUICtrlCreateLabel("Delay (in ms) : ", $bLeft + 10, $bTop + 50, 65, 15) $buff[$i][2] = GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15, 0x2000) GUICtrlSetState($buff[$i][2], $GUI_DISABLE) Next GUICtrlCreateGroup("", -99, -99, 1, 1) EndFunc ;==>ESBTab Func _activebuff() For $i = 0 To UBound($buff, 1)-1 If GUICtrlRead($buff[$i][0]) == $GUI_CHECKED Then GUICtrlSetState($buff[$i][1], $GUI_ENABLE) GUICtrlSetState($buff[$i][2], $GUI_ENABLE) Else GUICtrlSetState($buff[$i][1], $GUI_DISABLE) GUICtrlSetState($buff[$i][2], $GUI_DISABLE) EndIf Next EndFunc ;==>_activebuff Func _Terminate() Exit EndFunc ;==>_Terminate It works like this. Best regards Glenac Link to comment Share on other sites More sharing options...
PhoenixXL Posted February 7, 2013 Share Posted February 7, 2013 (edited) Some mathematical calculation can do better job without the need of the Variables Check the example for understandingexpandcollapse popup#include <GUIConstantsEx.au3> Opt("GUIOnEventMode", 1) Global $guiWidth = 500 Global $guiHeght = 500 GUICreate("", $guiWidth, $guiHeght) GUICtrlCreateLabel("", $guiWidth * 28 / 100, 8, $guiWidth, 17) GUICtrlCreateTab(2, 25, $guiWidth - 4, $guiHeght - 27) GUICtrlCreateTabItem("Buffs") ESBTab() GUICtrlCreateTabItem("") GUISetState() GUISetOnEvent($GUI_EVENT_CLOSE, "_Terminate") While 1 Sleep(100) WEnd Func ESBTab() Local $left = 30, $bTop Local $top = 60, $bLeft Local $ESBLeft = $left + 15 Local $ESBLeft2 = $ESBLeft + 110 Local $ESBTop = $top + 25 GUICtrlCreateGroup("Buffs :", $left, $ESBTop, $guiWidth - 60, 250) For $i = 0 To 3 $bTop = $ESBTop $bLeft = $left + 30 Switch $i Case 0 $bTop += 35 Case 1 $bTop += 35 $bLeft += 225 Case 2 $bTop += 120 Case 3 $bTop += 120 $bLeft += 225 EndSwitch GUICtrlCreateCheckbox("Buff " & $i + 1, $bLeft, $bTop) GUICtrlSetOnEvent(-1, "_activebuff") GUICtrlCreateLabel("Key : ", $bLeft + 10, $bTop + 25, 50, 15) GUICtrlCreateInput("", $bLeft + 80, $bTop + 25, 50, 15) GUICtrlSetState(-1, $GUI_DISABLE) GUICtrlCreateLabel("Delay (in ms) : ", $bLeft + 10, $bTop + 50, 65, 15) GUICtrlCreateInput("", $bLeft + 80, $bTop + 50, 50, 15, 0x2000) GUICtrlSetState(-1, $GUI_DISABLE) Next GUICtrlCreateGroup("", -99, -99, 1, 1) EndFunc ;==>ESBTab Func _activebuff() If GUICtrlRead(@GUI_CtrlId) == $GUI_CHECKED Then GUICtrlSetState(@GUI_CtrlId + 2, $GUI_ENABLE) GUICtrlSetState(@GUI_CtrlId + 4, $GUI_ENABLE) Else GUICtrlSetState(@GUI_CtrlId + 2, $GUI_DISABLE) GUICtrlSetState(@GUI_CtrlId + 4, $GUI_DISABLE) EndIf EndFunc ;==>_activebuff Func _Terminate() Exit EndFunc ;==>_TerminateThumbs up if it helped Edited February 7, 2013 by PhoenixXL Glenac 1 My code: PredictText: Predict Text of an Edit Control Like Scite. Remote Gmail: Execute your Scripts through Gmail. StringRegExp:Share and learn RegExp.Run As System: A command line wrapper around PSEXEC.exe to execute your apps scripts as System (LSA). Database: An easier approach for _SQ_LITE beginners. MathsEx: A UDF for Fractions and LCM, GCF/HCF. FloatingText: An UDF for make your text floating. Clipboard Extendor: A clipboard monitoring tool. Custom ScrollBar: Scroll Bar made with GDI+, user can use bitmaps instead. RestrictEdit_SRE: Restrict text in an Edit Control through a Regular Expression. Link to comment Share on other sites More sharing options...
Glenac Posted February 7, 2013 Author Share Posted February 7, 2013 @GUI_CtrlId <=== That is awsome! Thanks a lot Link to comment Share on other sites More sharing options...
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