[R] Selectionner 1 checkbox | " Auto Click "

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
Teyir
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 05 avr. 2018 10:19
Status : Hors ligne

[R] Selectionner 1 checkbox | " Auto Click "

#1

Message par Teyir » ven. 06 avr. 2018 08:00

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
Modifié en dernier par Teyir le ven. 06 avr. 2018 14:20, modifié 1 fois.
" Le plus grande plaisir dans la vie est de réaliser ce que les autres nous pensent incapable de réaliser. "

Avatar du membre
ZDS
Membre émérite
Membre émérite
Messages : 551
Enregistré le : jeu. 10 juin 2010 09:35
Localisation : 22300 Cul-d'chouette Langue-de-vache
Status : Hors ligne

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

#2

Message par ZDS » ven. 06 avr. 2018 13:28

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)
Modifié en dernier par ZDS le ven. 06 avr. 2018 14:14, modifié 2 fois.
ZDS : Chef de projet du nAiO (logiciel AutoIt gratuit sous licence CC 4.0 BY-NC-SA)
Tout problème a une solution, donc si il y a pas d'solution, c'est qu'il y a pas d'problème !

Avatar du membre
Teyir
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 05 avr. 2018 10:19
Status : Hors ligne

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

#3

Message par Teyir » ven. 06 avr. 2018 13:51

]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
" Le plus grande plaisir dans la vie est de réaliser ce que les autres nous pensent incapable de réaliser. "

Avatar du membre
Teyir
Niveau 1
Niveau 1
Messages : 7
Enregistré le : jeu. 05 avr. 2018 10:19
Status : Hors ligne

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

#4

Message par Teyir » ven. 06 avr. 2018 14:18

Merci, sujet résolu !
" Le plus grande plaisir dans la vie est de réaliser ce que les autres nous pensent incapable de réaliser. "

Avatar du membre
TommyDDR
Modérateur
Modérateur
Messages : 1742
Enregistré le : mar. 22 juil. 2008 20:55
Localisation : Nantes
Status : Hors ligne

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

#5

Message par TommyDDR » sam. 07 avr. 2018 09:13

ElseIF IF n'existe pas et est une erreur de syntaxe.
ElseIf suffit amplement ;)
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679

Répondre