ReverendJ1 Posted June 28, 2006 Posted June 28, 2006 Hello everyone, I am trying to write my first program with AutoITScript v3. I am trying to write a program that will make a button for each cd drive on a computer that when pressed will close that cd-tray. Sounds dumb, but is good for when you are remotely connected to a computer. Anywho, I made a little headway, and now I am stuck. I have figured out how to make the buttons, but I can't figure out how to space them right. The code below will make it so you can't see the first button/drive. Can anyone help me? I'm sure it is really easy. #include <GUIConstants.au3> $arrDrives = DriveGetDrive( "CDROM" ) GUICreate("My GUI Button") ; will create a dialog box that when displayed is centered Opt("GUICoordMode",0) If NOT @error Then $numXCoordinates = 0 $numYCoordinates = 0 For $i = 1 to $arrDrives[0] GUICtrlCreateButton (StringUpper($arrDrives[$i]), $numXCoordinates, $numYCoordinates, 25, 25) If $i > 1 Then $numXCoordinates = 28 EndIf Next GUISetState () ; will display an dialog box with 2 button ; Run the GUI until the dialog is closed While 1 $msg = GUIGetMsg() If $msg = $GUI_EVENT_CLOSE Then ExitLoop Wend EndIf
ReverendJ1 Posted June 28, 2006 Author Posted June 28, 2006 Hmmm. That didn't work either, that was what I had originally tried. I have three drives, and that still places the second drive/button over top of the first one. I guess it doesn't really matter, because I think you are right with the using a combo/list box. I just saw that you could create a dynamic GUI easily with AutoIT and wanted to play around with it.
ReverendJ1 Posted June 30, 2006 Author Posted June 30, 2006 No, those didn't really work. The spaces grow after each button. I had it right the first time, sort of. I just realized what happened, and I am an idiot. I changed the spacing after I used the spacing variable. Therefore, the spacing stayed 0 for 2 passes, instead of one. It should read like this:For $i = 1 to $arrDrives[0] If $i > 1 Then $numXCoordinates = 28 EndIf GUICtrlCreateButton (StringUpper($arrDrives[$i]), $numXCoordinates, $numYCoordinates, 25, 25) NextNote that I change $numXCoordinates before I call it the second time.
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