Page 1 sur 1

[R] Selectionner 1 checkbox | " Auto Click "

Posté : ven. 06 avr. 2018 09:00
par Teyir
Bonjour à tous,

Étant nouveau dans ce milieu de l'autoit, je vais vous passer le petit discours habituel pour ne pas vous faire perdre votre temps précieux.

Mon problème est le suivant j'aimerais sélectionné juste une seule checkbox dans la liste suivante, ce qui serais super ca serais d'avoir 1 slider qui commence à 1CPS jusqu'à 1000 CPS , avec une balise pour que ça actionne le mouseclick, le mouseclick doit suivre le curseur il ne doit donc pas avoir de coordonnées X Y

Le code ci dessous de mon GUI et de mon test mouse click
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 355, 282, 307, 161)
$Button1 = GUICtrlCreateButton("Auto Click !", 88, 200, 193, 33)
$Checkbox1 = GUICtrlCreateCheckbox("10 CPS", 136, 32, 89, 17)
$Checkbox2 = GUICtrlCreateCheckbox("13 CPS", 136, 56, 89, 17)
$Checkbox3 = GUICtrlCreateCheckbox("20 CPS", 136, 80, 89, 17)
$Checkbox4 = GUICtrlCreateCheckbox("100 CPS", 136, 128, 89, 17)
$Checkbox5 = GUICtrlCreateCheckbox("50 CPS", 136, 104, 89, 17)
$Checkbox6 = GUICtrlCreateCheckbox("500 CPS", 136, 152, 89, 17)
$Checkbox7 = GUICtrlCreateCheckbox("1000 CPS", 136, 176, 89, 17)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
      Case $GUI_EVENT_CLOSE
         Exit

   EndSwitch
WEnd


;~ While 1
;~     MouseClick ( "left" , 1000, 300 , 500)
;~     Sleep(1000*30)
;~ WEnd


Merci beaucoup de votre aide j'ai confiance en vous ! :D

Re: [..] Selectionner 1 checkbox | " Auto Click "

Posté : ven. 06 avr. 2018 14:28
par ZDS
Bonjour Teyir,

Vu ton besoin, au lieu d'utiliser des checkboxes, il faut utiliser des radioboxes :

Code : Tout sélectionner

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 355, 282, 307, 161)
$Radiobox1 = GUICtrlCreateRadio("10 CPS",   136,  30, 89, 17)
$Radiobox2 = GUICtrlCreateRadio("20 CPS",   136,  55, 89, 17)
$Radiobox3 = GUICtrlCreateRadio("50 CPS",   136,  80, 89, 17)
$Radiobox4 = GUICtrlCreateRadio("100 CPS",   136, 105, 89, 17)
$Radiobox5 = GUICtrlCreateRadio("200 CPS",  136, 130, 89, 17)
$Radiobox6 = GUICtrlCreateRadio("500 CPS",  136, 155, 89, 17)
$Radiobox7 = GUICtrlCreateRadio("1000 CPS", 136, 180, 89, 17)
GUICtrlSetState($Radiobox1, $GUI_CHECKED)
$Button1 = GUICtrlCreateButton("Auto Click !", 88, 210, 193, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			If GUICtrlRead($Radiobox1) = $GUI_CHECKED Then
				MsgBox(0, "", "10 CPS !")
			ElseIf GUICtrlRead($Radiobox2) = $GUI_CHECKED Then
				MsgBox(0, "", "20 CPS !")
			ElseIf GUICtrlRead($Radiobox3) = $GUI_CHECKED Then
				MsgBox(0, "", "50 CPS !")
			ElseIf GUICtrlRead($Radiobox4) = $GUI_CHECKED Then
				MsgBox(0, "", "100 CPS !")
			ElseIf GUICtrlRead($Radiobox5) = $GUI_CHECKED Then
				MsgBox(0, "", "200 CPS !")
			ElseIf GUICtrlRead($Radiobox6) = $GUI_CHECKED Then
				MsgBox(0, "", "500 CPS !")
			ElseIf GUICtrlRead($Radiobox7) = $GUI_CHECKED Then
				MsgBox(0, "", "1000 CPS !")
			EndIf
	EndSwitch
WEnd

;~ While 1
;~     MouseClick ( "left" , 1000, 300 , 500)
;~     Sleep(1000*30)
;~ WEnd

Il y a des méthodes plus propres pour faire ce dont tu as besoin (utilisation d'un tableau pour tes valeurs 10/20/50/100/200/500/1000, utilisation d'une combobox pour la sélection, etc...), mais il vaut mieux savoir marcher avant d'apprendre à courir :) Bon courage et à bientôt !

PS: Je préfère te mettre en garde, ce genre de demande rappelle pas mal d'autoclicker utiles dans une multitude de bots, ce qui est prohibé sur ce forum; donc ayant pesé le pour le contre et la dose de farine, n'étant pas sûr et certain que ce soit pour une demande interdite je t'ai quand même répondu.

PS2: Si il s'agit de la fréquence d'un autoclicker tout à fait légitime, et que CPS signifie bien "clic par seconde", tu auras du mal à atteindre les 1000 clics par secondes. Appui du clic, relâchement du clic, et prise en compte coté système : pour avoir eu à le tester, sur une machine pas forcément boostée à mort, ça prenait déjà plus de 15 ms. D'où un ratio maximum de 70 CPS.

EDIT: Désolé j'avais mal écrit les lignes ElseIf (un If supplémentaire qui trainait)

Re: [..] Selectionner 1 checkbox | " Auto Click "

Posté : ven. 06 avr. 2018 14:51
par Teyir
]Merci pour ton aide, les CPS c'etais juste à titre d'exemple car je n'ai pas finis tout mes réglages
While 1
   $nMsg = GUIGetMsg()
   Switch $nMsg
      Case $GUI_EVENT_CLOSE
         Exit
      Case $Button1
         If GUICtrlRead($Radiobox1) = $GUI_CHECKED Then
            MsgBox(0, "", "10 CPS !")
         ElseIf If GUICtrlRead($Radiobox2) = $GUI_CHECKED Then
            MsgBox(0, "", "20 CPS !")
         ElseIf If GUICtrlRead($Radiobox3) = $GUI_CHECKED Then
            MsgBox(0, "", "50 CPS !")
         ElseIf If GUICtrlRead($Radiobox4) = $GUI_CHECKED Then
            MsgBox(0, "", "100 CPS !")
         ElseIf If GUICtrlRead($Radiobox5) = $GUI_CHECKED Then
            MsgBox(0, "", "200 CPS !")
         ElseIf If GUICtrlRead($Radiobox6) = $GUI_CHECKED Then
            MsgBox(0, "", "500 CPS !")
         ElseIf If GUICtrlRead($Radiobox7) = $GUI_CHECKED Then
            MsgBox(0, "", "1000 CPS !")
         EndIf
   EndSwitch
WEnd
Ma question peut paraitre encore bête mais pourquoi ai-je toujours une erreur de synthax en dessous de chaque ligne

Merci

Re: [..] Selectionner 1 checkbox | " Auto Click "

Posté : ven. 06 avr. 2018 15:18
par Teyir
Merci, sujet résolu !

Re: [R] Selectionner 1 checkbox | " Auto Click "

Posté : sam. 07 avr. 2018 10:13
par TommyDDR
ElseIF IF n'existe pas et est une erreur de syntaxe.
ElseIf suffit amplement ;)