Valnurat

[SOLVED] Small question about CheckBox

1 post in this topic

#1 ·  Posted (edited)

I have created a checkbox and a date component by doing this:
 

$idDate = GUICtrlCreateDate("", 270, 190, 120, 20) ;330
GUICtrlSetState($idDate, $gui_disable)

$idCheckBox = GUICtrlCreateCheckbox("End date:", 190, 190, 65, 20, BitOR($BS_RIGHTBUTTON, $BS_CHECKBOX))

and to check if it's checked or not I do this:

If _IsChecked($idCheckbox) Then
    GUICtrlSetState($idDate,$gui_enable)
Else
    GUICtrlSetState($idDate,$gui_disable)
EndIf



Func _IsChecked($idControlID)
    Return BitAND(GUICtrlRead($idControlID), $GUI_CHECKED) = $GUI_CHECKED
EndFunc   ;==>_IsChecked

but the checkmark is not shown and the date component will not be enabled or disabled for that matter, but if I do this:

$idCheckBox = GUICtrlCreateCheckbox("End date:", 190, 190, 65, 20)

It works. But then the text on the checkbox, is on the wrong side.

Do I do something wrong with my creation of the checkbox?

 

EDIT:

$idCheckBox = GUICtrlCreateCheckbox("End date:", 190, 190, 65, 20, BitOR($GUI_SS_DEFAULT_CHECKBOX,$BS_RIGHTBUTTON))

 

Edited by Valnurat
Found the solution

Yours sincerely

Kenneth.

Share this post


Link to post
Share on other sites



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 account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Similar Content

    • KB505
      By KB505
      Hello,
       
      I'm starting a script in AutoIT to automize a task in a software. I need to click a several Controls. 
      I'm just starting to learn AutoIT, and discovered that we can use the Window Info tool (au3info) to identify controls precisely and targetting safely a specific button.
      However, when I try it, I realize that most of the controls in my toolbar have the same Control Info (No ID, same class, same instance, ...). The only thing that changes is the ControlClicks Coord but I don't think that it's interesting, I don't see the difference with the Mouse Coordinates. Besides, I was aiming to write a stable script that would work even if the button changes a little bit of place for example. 
      Should I use another tool that Window Info tool to detect this Controls ? Is there another way to identify a Control ? 
      Thank you in advance for your help
       
    • lattey
      By lattey
      I have a system that need to operates at Windows NT environment. So, i am using old version autoit - ver 3.2.12.1, since only old version that compatible with windows NT. But i face some error which i couldn't figure out why it is happen. The error only happen after running the system few times. i suspected it is may due to i am using old version autoit but i am not
      sure about it. 
      Errors that I faced:
       Send command send wrong keys - after few times, autoit will send wrong keys. The autoit will send Start keys. WinActivate("Program Selection") send ("{UP}") ;loop start to delete test prog local $j = 0 Do send ("{DOWN}") Sleep (200) ControlClick("Program Selection", "", "[CLASS:Button; INSTANCE:3]") Sleep (500) $j = $j + 1 until $j = 10 The button not appear - after running few times, the button suddenly not appear SplashTextOn("", "successfully Load. ", 300, 120, (@DesktopWidth - 330) / 2, (@DesktopHeight - 339) / 2, 0, "", 16) Sleep(10000) SplashOff() GUISetFont(7, 400, "Tahoma") ; will display underlined characters $CmdPrint = GUICtrlCreateButton("PRINT",6,420,295,30,$BS_MULTILINE) there also few error that happens after few times running which doesnt not capture. is this maybe because i am using the old version of autoit? How can i proved all this error happen may not because of my code?
    • TwistedXion
      By TwistedXion
      Ok so I'm making a game in auto it and I need some help with optimizing the code(making it shorter/faster or better ways of doing things) and if you could when you make suggestions please explain why you suggest those changes as I'm very new to autoit and am doing this project just to learn more about the language (first computer language I have ever tried to learn)
      thanks for any help in advance, also you may need to uncomment the #requireAdmin as it does need to make a dir to save a .ini file where all the info about your character.
       
      ps I know it's not much of a game but I have only been working on the code for a few hours and I will be adding a lot more stuff, so this is by no mean finished. 
      #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ProgressConstants.au3> #include <StaticConstants.au3> ;~ #RequireAdmin Global $nClickButtonCount = 0 Global $pDamage = 0 Global $bDamage = 0 Global $fPath = @AppDataCommonDir & "\Fantom\Path" Global $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") Global $cTName = IniRead($fPath & "\" & "InFo", "Name", "ToonName", "") Global $cUName = IniRead($fPath & "\" & "InFo", "Name", "UserName", "") #Region ### START mm GUI section ### $mm = GUICreate("MainMenu", 238, 199, 337, 189) $tName = GUICtrlCreateInput($cTName, 64, 64, 113, 21) $uName = GUICtrlCreateInput($cUName, 64, 120, 113, 21) GUICtrlCreateLabel("ToonName", 90, 40, 57, 17) GUICtrlCreateLabel("UserName", 91, 96, 54, 17) $Enter = GUICtrlCreateButton("Enter", 90, 151, 57, 41) GUISetState(@SW_SHOW, $mm) #EndRegion ### START mm GUI section ### #Region ### START Town GUI section ### $Town = GUICreate("Town", 387, 316, 396, 122) $TGroup1 = GUICtrlCreateGroup("", 0, 0, 385, 313) $TButton1 = GUICtrlCreateButton("Inn", 8, 8, 57, 33) $TButton2 = GUICtrlCreateButton("Wild", 320, 8, 57, 33) $TButton3 = GUICtrlCreateButton("Gen store", 8, 48, 57, 33) GUISetState(@SW_HIDE, $Town) #EndRegion ### START Town GUI section ### #Region ### START Wild GUI section ### $Wild = GUICreate("Wild", 387, 316, 396, 122) $WGroup1 = GUICtrlCreateGroup("", 0, 0, 385, 313) $WButton1 = GUICtrlCreateButton("Town", 8, 8, 57, 33) $WButton2 = GUICtrlCreateButton("Fight", 320, 8, 57, 33) GUISetState(@SW_HIDE, $Wild) #EndRegion ### START Wild GUI section ### #Region ### START Fight GUI section ### $Fight = GUICreate("Fight", 390, 319, 396, 122) $listview = GUICtrlCreateListView("Your Damage | Eneime Damage | Your HP | Eneime HP", 2, 146, 386, 150) $Progress1 = GUICtrlCreateProgress(8, 32, 185, 25) $Progress2 = GUICtrlCreateProgress(200, 32, 185, 25) $YourHP = GUICtrlCreateLabel("YourHP", 8, 8, 41, 17) $EneimeHP = GUICtrlCreateLabel("EneimeHP", 200, 8, 56, 17) $Start = GUICtrlCreateButton("Start", 158, 80, 73, 41) $Attack = GUICtrlCreateButton("Attack", 158, 80, 73, 41) GUISetState(@SW_HIDE, $Fight) #EndRegion ### START Fight GUI section ### #Region ### START Inn GUI section ### $Inn = GUICreate("Inn", 390, 319, 396, 122) $hpdisplay = GUICtrlCreateLabel("You have " & $pGold & " gold", 16, 8, 100, 100) $fullH = GUICtrlCreateButton("Heal", 8, 111, 73, 57) $drink = GUICtrlCreateButton("Drink", 120, 111, 73, 57) $eat = GUICtrlCreateButton("eat", 232, 111, 73, 57) $bttown = GUICtrlCreateButton("town", 8, 250, 73, 57) $fRHP = GUICtrlCreateLabel("Fully Restore HP", 0, 96, 83, 17) $aHPlDam = GUICtrlCreateLabel("Adds more HP" & @LF & "lowers Dammage", 232, 80, 83, 30) $Label1 = GUICtrlCreateLabel("Add more Dammage" & @LF & "Lower HP", 120, 80, 100, 30) GUISetState(@SW_HIDE, $Inn) #EndRegion ### START Inn GUI section ### While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Enter $iniTName = GUICtrlRead($tName) $iniUName = GUICtrlRead($uName) DirCreate($fPath) IniWrite($fPath & "\" & "InFo", "Name", "ToonName", $iniTName) IniWrite($fPath & "\" & "InFo", "Name", "UserName", $iniUName) GUIDelete($mm) GUISetState(@SW_SHOW, $Town) Case $TButton2 GUISetState(@SW_HIDE, $Town) GUISetState(@SW_SHOW, $Wild) Case $WButton1 GUISetState(@SW_HIDE, $Wild) GUISetState(@SW_SHOW, $Town) Case $WButton2 GUISetState(@SW_HIDE, $Wild) GUISetState(@SW_SHOW, $Fight) Case $Start GUICtrlDelete($Start) GUISetState(@SW_SHOW) Start() Case $Attack Dice() Case $TButton1 GUISetState(@SW_HIDE, $Town) GUISetState(@SW_SHOW, $Inn) Case $bttown GUISetState(@SW_HIDE, $Inn) GUISetState(@SW_SHOW, $Town) Case $fullH GUICtrlSetData($Progress1, 100) If $pGold >= 100 Then IniWrite($fPath & "\" & "InFo", "Item", "Gold", $pGold - 100) $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") GUICtrlSetData($hpdisplay, "You have " & $pGold & " gold") Else MsgBox(1, "Sorry", "You do not have enough gold for that action", 1) EndIf EndSwitch WEnd Func Start() GUICtrlSetData($Progress1, 100) GUICtrlRead($Progress1) GUICtrlSetData($Progress2, 100) GUICtrlRead($Progress2) EndFunc ;==>Start Func Dice() Global $pDamage = Random(1, 20, 1) Global $bDamage = Random(1, 20, 1) Global $gGold = Random(0, 50, 1) Damage() EndFunc ;==>Dice Func Damage() $cpHP = GUICtrlRead($Progress1) $cbHP = GUICtrlRead($Progress2) $pHP = $cpHP - $bDamage $bHP = $cbHP - $pDamage GUICtrlSetData($Progress1, $pHP) GUICtrlSetData($Progress2, $bHP) GUICtrlRead($Progress1) GUICtrlRead($Progress2) $listview = GUICtrlCreateListView("Your Damage | Eneime Damage | Your HP | Eneime HP", 2, 146, 386, 150) GUICtrlCreateListViewItem($pDamage & "|" & $bDamage & "|" & $pHP & "|" & $bHP, $listview) If $pHP <= 0 And $bHP <= 0 Then IniWrite($fPath & "\" & "InFo", "Item", "Gold", $pGold + $gGold) GUICtrlDelete($listview) GUISetState(@SW_HIDE, $Fight) GUISetState(@SW_SHOW, $Town) Global $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") MsgBox(1, "Draw", "You Draw..." & @LF & "You get " & $gGold & " gold" & @LF & " you now have " & $pGold) GUICtrlSetData($Progress2, 100) ElseIf $bHP <= 0 Then IniWrite($fPath & "\" & "InFo", "Item", "Gold", $pGold + $gGold) GUICtrlDelete($listview) GUISetState(@SW_HIDE, $Fight) GUISetState(@SW_SHOW, $Town) Global $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") MsgBox(1, "Win", "You win..." & @LF & "You get " & $gGold & " gold" & @LF & " you now have " & $pGold) GUICtrlSetData($Progress2, 100) ElseIf $pHP <= 0 Then GUICtrlDelete($listview) GUISetState(@SW_HIDE, $Fight) GUISetState(@SW_SHOW, $Town) GUICtrlSetData($Progress2, 100) Global $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") MsgBox(1, "Death", "You died...") $t = MsgBox(4, "Dead", "Would you like to revive") If $t = 6 Then $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") If $pGold < 25 Then GUICtrlSetData($Progress1, 75) Else $pGold = $pGold - 25 GUICtrlSetData($Progress1, 100) Global $pGold = IniRead($fPath & "\" & "InFo", "Item", "Gold", "1000") IniWrite($fPath & "\" & "InFo", "Item", "Gold", $pGold + $gGold) MsgBox(1, "Revived", "Your new gold amount is " & $pGold) EndIf ElseIf $t = 7 Then Exit EndIf EndIf EndFunc ;==>Damage  
    • quimao
      By quimao
      Hi Autoit team, i just got this bug today and not sure i'm right
       
      $VLC_path = FileOpenDialog("Select file folder", @ScriptDir, "vlc.exe (vlc.exe)" ,1) IniWrite("VLC_convert.ini","VLC","VLCpath",$VLC_path) ;~ or ;~ IniWrite("VLC_convert.ini","VLC","VLCpath","anything here")  
    • swatsapkraz
      By swatsapkraz
      First script here. Thanks for taking the time.
      I want to download a file from my dropbox or other cloud file host and I want autoit to read the file and proceed.
      Here are the references I've gone through, it's just I'm not familiar yet with autoit so I'm looking for advice:
      https://www.autoitscript.com/autoit3/docs/functions/InetGet.htm
      https://www.autoitscript.com/autoit3/docs/functions/FileRead.htm
       
      How would I start out downloading a text file from dropbox and if in the file there is a 1 then it will proceed with the rest of the script if there is a 0 or if the file cannot be downloaded I want it to just end.
       
      Thank you for taking the time to read this and I apologize in advance if this seems very trivial for some but this is my first script and I'm hoping this is the correct place to ask this question.