Что нового

[Checkbox] Не получается реализовать скрипт

SNAK

SNAK
Сообщения
59
Репутация
0
Код:
; меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=c:\users\Паша\desktop\fd\Новая папка\form1.kxf
$Form1_1 = GUICreate("FK", 338, 281, 198, 123)
WinSetOnTop($Form1_1,"",1)
$Group1 = GUICtrlCreateGroup("", 16, 56, 305, 169)
$Checkbox1 = GUICtrlCreateCheckbox("Red", 32, 80, 97, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Yellow", 32, 112, 97, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Blue", 32, 144, 97, 17)
$Checkbox4 = GUICtrlCreateCheckbox("Green", 32, 176, 97, 17)
$Checkbox5 = GUICtrlCreateCheckbox("Head", 208, 80, 97, 17)
$Checkbox6 = GUICtrlCreateCheckbox("Team", 208, 112, 97, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Update", 120, 240, 99, 33)
$Button2 = GUICtrlCreateButton("ON", 16, 16, 83, 33)
$Button3 = GUICtrlCreateButton("OFF", 112, 16, 83, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
; меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

; дествия меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
	Case $GUI_EVENT_CLOSE
	   	Exit

	 Case $Button3
	    If GUICtrlRead ($Checkbox1) = 4 Then Checkbox1()
		If GUICtrlRead ($Checkbox2) = 4 Then Checkbox2()
		If GUICtrlRead ($Checkbox3) = 4 Then Checkbox3()
		If GUICtrlRead ($Checkbox4) = 4 Then Checkbox4()
		If GUICtrlRead ($Checkbox5) = 4 Then Checkbox5()
	    If GUICtrlRead ($Checkbox6) = 4 Then Checkbox6()
		   
	  Case $Button2
	    If GUICtrlRead ($Checkbox1) = 1 Then Checkbox1()
		If GUICtrlRead ($Checkbox2) = 1 Then Checkbox2()
		If GUICtrlRead ($Checkbox3) = 1 Then Checkbox3()
		If GUICtrlRead ($Checkbox4) = 1 Then Checkbox4()
		If GUICtrlRead ($Checkbox5) = 1 Then Checkbox5()
	    If GUICtrlRead ($Checkbox6) = 1 Then Checkbox6()

	EndSwitch
WEnd
; дествия меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

; координаты!
;Local $7 = PixelSearch(677, 384, 690, 399, 0xFFFFFF); координаты Team
;Local $6 = PixelSearch(677, 384, 690, 399, 0x083CC6); координаты Blue
;Local $5 = PixelSearch(677, 384, 690, 399, 0xEFB600); координаты Yellow
;Local $4 = PixelSearch(677, 384, 690, 399, 0x08C331); координаты Green
;Local $3 = PixelSearch(677, 384, 690, 399, 0xC61008); координаты Red
;Local $2 = PixelSearch(677, 384, 690, 399, 0xFFD77B); координаты Hed
; координаты!

Func Checkbox1()
$3 = PixelSearch(677, 384, 690, 399, 0xC61008); координаты Red
If IsArray ($3) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox2()
$5 = PixelSearch(677, 384, 690, 399, 0xEFB600); координаты Yellow
If IsArray ($5) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox3()
$6 = PixelSearch(677, 384, 690, 399, 0x083CC6); координаты Blue
If IsArray ($6) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox4()
$4 = PixelSearch(677, 384, 690, 399, 0x08C331); координаты Green
If IsArray ($4) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox5()
$2 = PixelSearch(677, 384, 690, 399, 0xFFD77B); координаты head
If IsArray ($2) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox6()
$7 = PixelSearch(677, 384, 690, 399, 0xFFFFFF); координаты Team
If IsArray ($7) = True Then ; нажатие при наведении
MouseDown
EndIf
   EndFunc
ЧТО ТУТ НЕ ТАК ТО БЛИН :shok: :stars:
 

filautdinov

Знающий
Сообщения
96
Репутация
9
Re: ПОМОГИТЕ ломаю голову и нечего не выходит

Для чего это? И что конкретно тебе нужно?
 
Автор
SNAK

SNAK

SNAK
Сообщения
59
Репутация
0
Re: ПОМОГИТЕ ломаю голову и нечего не выходит

filautdinov сказал(а):
Для чего это? И что конкретно тебе нужно?
ну в меню есть 6 Checkbox надо чтобы после нажатия $Button2 те Checkbox которые нажаты работали ,а при нажатии $Button3 отключались ,а работать должно именно сканирование того Checkbox который включен типо того
 

filautdinov

Знающий
Сообщения
96
Репутация
9
Повесь функции в цикл ибо при нажатии кнопки они только однократно срабатывают.
 
Автор
SNAK

SNAK

SNAK
Сообщения
59
Репутация
0
filautdinov сказал(а):
Повесь функции в цикл ибо при нажатии кнопки они только однократно срабатывают.
тогда они будут срабатывать и без на нажатия всё время нет ?
 

filautdinov

Знающий
Сообщения
96
Репутация
9
Попробуй так
Код:
#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.10.2
 Author:         myName

 Script Function:
	Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here
; меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $sStart = 0

#Region ### START Koda GUI section ### Form=c:\users\Паша\desktop\fd\Новая папка\form1.kxf
$Form1_1 = GUICreate("FK", 338, 281, 198, 123)
WinSetOnTop($Form1_1,"",1)
$Group1 = GUICtrlCreateGroup("", 16, 56, 305, 169)
$Checkbox1 = GUICtrlCreateCheckbox("Red", 32, 80, 97, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Yellow", 32, 112, 97, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Blue", 32, 144, 97, 17)
$Checkbox4 = GUICtrlCreateCheckbox("Green", 32, 176, 97, 17)
$Checkbox5 = GUICtrlCreateCheckbox("Head", 208, 80, 97, 17)
$Checkbox6 = GUICtrlCreateCheckbox("Team", 208, 112, 97, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Update", 120, 240, 99, 33)
$Button2 = GUICtrlCreateButton("ON", 16, 16, 83, 33)
$Button3 = GUICtrlCreateButton("OFF", 112, 16, 83, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
; меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

; дествия меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
While 1
	Sleep(1)
	_Check()
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
        Exit

     Case $Button3
		 $sStart = 0
           
	   Case $Button2
		   $sStart = 1
        

    EndSwitch
WEnd
; дествия меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

; координаты!
;Local $7 = PixelSearch(677, 384, 690, 399, 0xFFFFFF); координаты Team
;Local $6 = PixelSearch(677, 384, 690, 399, 0x083CC6); координаты Blue
;Local $5 = PixelSearch(677, 384, 690, 399, 0xEFB600); координаты Yellow
;Local $4 = PixelSearch(677, 384, 690, 399, 0x08C331); координаты Green
;Local $3 = PixelSearch(677, 384, 690, 399, 0xC61008); координаты Red
;Local $2 = PixelSearch(677, 384, 690, 399, 0xFFD77B); координаты Hed
; координаты!

Func _Check()
	if $sStart = 1
		If GUICtrlRead ($Checkbox1) = 1 Then Checkbox1()
        If GUICtrlRead ($Checkbox2) = 1 Then Checkbox2()
        If GUICtrlRead ($Checkbox3) = 1 Then Checkbox3()
        If GUICtrlRead ($Checkbox4) = 1 Then Checkbox4()
        If GUICtrlRead ($Checkbox5) = 1 Then Checkbox5()
        If GUICtrlRead ($Checkbox6) = 1 Then Checkbox6()
	EndIf
EndFunc


Func Checkbox1()
$3 = PixelSearch(677, 384, 690, 399, 0xC61008); координаты Red
If IsArray ($3) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox2()
$5 = PixelSearch(677, 384, 690, 399, 0xEFB600); координаты Yellow
If IsArray ($5) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox3()
$6 = PixelSearch(677, 384, 690, 399, 0x083CC6); координаты Blue
If IsArray ($6) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox4()
$4 = PixelSearch(677, 384, 690, 399, 0x08C331); координаты Green
If IsArray ($4) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox5()
$2 = PixelSearch(677, 384, 690, 399, 0xFFD77B); координаты head
If IsArray ($2) = True Then ; нажатие при наведении
MouseClick("LEFT")
EndIf
   EndFunc

Func Checkbox6()
$7 = PixelSearch(677, 384, 690, 399, 0xFFFFFF); координаты Team
If IsArray ($7) = True Then ; нажатие при наведении
MouseDown
EndIf
   EndFunc



Добавлено:
Сообщение автоматически объединено:

Не работает изменить сообщение после if $sStart = 1 поставь Then зыбыл указать
 
Автор
SNAK

SNAK

SNAK
Сообщения
59
Репутация
0
да спасибо всё работает (сидел 3 дня голову ломал )
 

Kasper

Знающий
Сообщения
70
Репутация
8
OffTopic:

Зачем 6 практически одинаковых функций в которых меняется только цвет.
Код:
#cs ----------------------------------------------------------------------------

 AutoIt Version: 3.3.10.2
 Author:         myName

 Script Function:
    Template AutoIt script.

#ce ----------------------------------------------------------------------------

; Script Start - Add your code below here
; меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $sStart = 0

#Region ### START Koda GUI section ### Form=c:\users\Паша\desktop\fd\Новая папка\form1.kxf
$Form1_1 = GUICreate("FK", 338, 281, 198, 123)
WinSetOnTop($Form1_1,"",1)
$Group1 = GUICtrlCreateGroup("", 16, 56, 305, 169)
$Checkbox1 = GUICtrlCreateCheckbox("Red", 32, 80, 97, 17)
$Checkbox2 = GUICtrlCreateCheckbox("Yellow", 32, 112, 97, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Blue", 32, 144, 97, 17)
$Checkbox4 = GUICtrlCreateCheckbox("Green", 32, 176, 97, 17)
$Checkbox5 = GUICtrlCreateCheckbox("Head", 208, 80, 97, 17)
$Checkbox6 = GUICtrlCreateCheckbox("Team", 208, 112, 97, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Update", 120, 240, 99, 33)
$Button2 = GUICtrlCreateButton("ON", 16, 16, 83, 33)
$Button3 = GUICtrlCreateButton("OFF", 112, 16, 83, 33)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
; меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

; дествия меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
While 1
    Sleep(1)
    _Check()
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
        Exit
     Case $Button3
		$sStart = 0
       Case $Button2
		$sStart = 1
    EndSwitch
WEnd
; дествия меню!\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/

; координаты!
;Local $7 = PixelSearch(677, 384, 690, 399, 0xFFFFFF); координаты Team
;Local $6 = PixelSearch(677, 384, 690, 399, 0x083CC6); координаты Blue
;Local $5 = PixelSearch(677, 384, 690, 399, 0xEFB600); координаты Yellow
;Local $4 = PixelSearch(677, 384, 690, 399, 0x08C331); координаты Green
;Local $3 = PixelSearch(677, 384, 690, 399, 0xC61008); координаты Red
;Local $2 = PixelSearch(677, 384, 690, 399, 0xFFD77B); координаты Hed
; координаты!

Func _Check()
    if $sStart = 1 Then
        If GUICtrlRead ($Checkbox1) = 1 Then Checkbox(0xC61008)
        If GUICtrlRead ($Checkbox2) = 1 Then Checkbox(0xEFB600)
        If GUICtrlRead ($Checkbox3) = 1 Then Checkbox(0x083CC6)
        If GUICtrlRead ($Checkbox4) = 1 Then Checkbox(0x08C331)
        If GUICtrlRead ($Checkbox5) = 1 Then Checkbox(0xFFD77B)
        If GUICtrlRead ($Checkbox6) = 1 Then Checkbox(0xFFFFFF)
    EndIf
EndFunc


Func Checkbox($Color)
	$pxSearch = PixelSearch(677, 384, 690, 399, $Color); координаты Red
	If IsArray ($pxSearch) = True Then ; нажатие при наведении
		MouseClick("LEFT")
	EndIf
EndFunc

 
Верх