Доброго времени суток.
В написании скриптов, опыта нет. Было нужно сделать скрипт на установку 9-20 программ в автоматическом режиме. Автоматизация программ сделана. Теперь борюсь с GUI. Написал некое подобие скрипта. Он даже работает. (Что несколько удивило.) Но получился слишком громоздким. Может есть идеи как его оптимизировать?
Форумы читал. Даже про переменные слышал. Но не разобрался. :(
В написании скриптов, опыта нет. Было нужно сделать скрипт на установку 9-20 программ в автоматическом режиме. Автоматизация программ сделана. Теперь борюсь с GUI. Написал некое подобие скрипта. Он даже работает. (Что несколько удивило.) Но получился слишком громоздким. Может есть идеи как его оптимизировать?
Форумы читал. Даже про переменные слышал. Но не разобрался. :(
Код:
#include <GUIConstants.au3>
;~ Вводим переменные
$C = 1
;~ Переменные меню
$GUI1 = GUICreate("ПК МАКСИМУМ", 500, 450, -1, -1)
$Buttonexit = GUICtrlCreateButton("Отмена", 200, 380, 60)
$Buttonnext = GUICtrlCreateButton("Начать установку", 50, 380, 100)
;~ Переменные Чекбоксов
$check1 = GUICtrlCreateCheckbox ( "1 Антивирусы", 10, 30, 190 ,20 , -1 )
$check2 = GUICtrlCreateCheckbox ( "2 Архиваторы", 10, 50, 190 ,20 , -1 )
$check3 = GUICtrlCreateCheckbox ( "3 Браузеры", 10, 70, 190 ,20 , -1 )
$check4 = GUICtrlCreateCheckbox ( "4 Кодаки", 10, 90, 190 ,20 , -1 )
$check5 = GUICtrlCreateCheckbox ( "5 Запись дисков", 10, 110, 190 ,20 , -1 )
$check6 = GUICtrlCreateCheckbox ( "6 Офисные приложения", 10, 130, 190 ,20 , -1 )
$check7 = GUICtrlCreateCheckbox ( "7 Редактирование фото", 10, 150, 190 ,20 , -1 )
$check8 = GUICtrlCreateCheckbox ( "8 Редактирование звука", 10, 170, 190 ,20 , -1 )
$check9 = GUICtrlCreateCheckbox ( "9 Конвертирование видео", 10, 190, 190 ,20 , -1 )
$check10 = GUICtrlCreateCheckbox ( "10 Графический редактор", 10, 210, 190 ,20 , -1 )
$check11 = GUICtrlCreateCheckbox ( "11 домашняя бухгалтерия", 10, 230, 190 ,20 , -1 )
$check12 = GUICtrlCreateCheckbox ( "12 Общение в сети интернет", 10, 250, 190 ,20 , -1 )
$check13 = GUICtrlCreateCheckbox ( "13 Каталоги фильмов", 10, 270, 190 ,20 , -1 )
$check14 = GUICtrlCreateCheckbox ( "14 Чистка реестра", 10, 290, 190 ,20 , -1 )
$check1t = GUICtrlCreateCheckbox ( "т Игры образовательные", 10, 310, 190 ,20 , -1 )
$check2t = GUICtrlCreateCheckbox ( "т Планетарий", 10, 330, 190 ,20 , -1 )
$check3t = GUICtrlCreateCheckbox ( "т Рисовалка", 10, 350, 190 ,20 , -1 )
;~ Переменные для установки ПО
$1 = 1
$2 = 1
$3 = 1
$4 = 1
$5 = 1
$6 = 1
$7 = 1
$8 = 1
$9 = 1
$10 = 1
$11 = 1
$12 = 1
$13 = 1
$14 = 1
$1t = 1
$2t = 1
$3t = 1
;~ Построение меню
GUISetState( $GUI1)
GUICtrlCreateLabel("Список устанавливаемого ПО", 150, 10)
GUICtrlCreateCheckbox ( "1 Антивирусы", 10, 30, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "2 Архиваторы", 10, 50, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "3 Браузеры", 10, 70, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "4 Кодаки", 10, 90, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "5 Запись дисков", 10, 110, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "6 Офисные приложения", 10, 130, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "7 Редактирование фото", 10, 150, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "8 Редактирование звука", 10, 170, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "9 Конвертирование видео", 10, 190, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "10 Графический редактор", 10, 210, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "11 домашняя бухгалтерия", 10, 230, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "12 Общение в сети интернет", 10, 250, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "13 Каталоги фильмов", 10, 270, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "14 Чистка реестра", 10, 290, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "т Игры образовательные", 10, 310, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "т Планетарий", 10, 330, 190 ,20 , -1 )
GUICtrlCreateCheckbox ( "т Рисовалка", 10, 350, 190 ,20 , -1 )
GUICtrlCreateButton("Начать установку", 50, 380, 100)
GUICtrlCreateButton("Отмена", 200, 380, 60)
GUISetState()
Do
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
Case $Buttonexit
If GUICtrlRead($Buttonexit) = "Отмена" Then
Exit
EndIf
Case $check1
If GUICtrlRead($check1) = 1 Then
$1 = 5
Else
$1 = 0
EndIf
Case $check2
If GUICtrlRead($check2) = 1 Then
$2 = 5
Else
$2 = 0
EndIf
Case $check3
If GUICtrlRead($check3) = 1 Then
$3 = 5
Else
$3 = 0
EndIf
Case $check4
If GUICtrlRead($check4) = 1 Then
$4 = 5
Else
$4 = 0
EndIf
Case $check5
If GUICtrlRead($check5) = 1 Then
$5 = 5
Else
$5 = 0
EndIf
Case $check6
If GUICtrlRead($check6) = 1 Then
$6 = 5
Else
$6 = 0
EndIf
Case $check7
If GUICtrlRead($check7) = 1 Then
$7 = 5
Else
$7 = 0
EndIf
Case $check8
If GUICtrlRead($check8) = 1 Then
$8 = 5
Else
$8 = 0
EndIf
Case $check9
If GUICtrlRead($check9) = 1 Then
$9 = 5
Else
$9 = 0
EndIf
Case $check10
If GUICtrlRead($check10) = 1 Then
$10 = 5
Else
$10 = 0
EndIf
Case $check11
If GUICtrlRead($check11) = 1 Then
$11 = 5
Else
$11 = 0
EndIf
Case $check12
If GUICtrlRead($check12) = 1 Then
$12 = 5
Else
$12 = 0
EndIf
Case $check13
If GUICtrlRead($check13) = 1 Then
$13 = 5
Else
$13 = 0
EndIf
Case $check14
If GUICtrlRead($check14) = 1 Then
$14 = 5
Else
$14 = 0
EndIf
Case $check1t
If GUICtrlRead($check1t) = 1 Then
$1t = 5
Else
$1t = 0
EndIf
Case $check2t
If GUICtrlRead($check2t) = 1 Then
$2t = 5
Else
$2t = 0
EndIf
Case $check3t
If GUICtrlRead($check3t) = 1 Then
$3t = 5
Else
$3t = 0
EndIf
Case $Buttonnext
If GUICtrlRead($Buttonnext) = "Начать установку" Then
$C=6
EndIf
EndSwitch
Until $C=6
;~ Установка
if $1 >= 2 Then
msgbox(0,"state of the menuitem", "1")
EndIf
if $2 >= 2 Then
msgbox(0,"state of the menuitem","2")
EndIf
if $3 >= 2 Then
msgbox(0,"state of the menuitem","3")
EndIf
if $4 >= 2 Then
msgbox(0,"state of the menuitem","4")
EndIf
if $5 >= 2 Then
msgbox(0,"state of the menuitem","5")
EndIf
if $6 >= 2 Then
msgbox(0,"state of the menuitem","6")
EndIf
if $7 >= 2 Then
msgbox(0,"state of the menuitem","7")
EndIf
if $8 >= 2 Then
msgbox(0,"state of the menuitem","8")
EndIf
if $9 >= 2 Then
msgbox(0,"state of the menuitem","9")
EndIf
if $10 >= 2 Then
msgbox(0,"state of the menuitem","10")
EndIf
if $11 >= 2 Then
msgbox(0,"state of the menuitem","11")
EndIf
if $12 >= 2 Then
msgbox(0,"state of the menuitem","12")
EndIf
if $13 >= 2 Then
msgbox(0,"state of the menuitem","13")
EndIf
if $14 >= 2 Then
msgbox(0,"state of the menuitem","14")
EndIf
if $1t >= 2 Then
msgbox(0,"state of the menuitem","15")
EndIf
if $2t >= 2 Then
msgbox(0,"state of the menuitem","16")
EndIf
if $3t >= 2 Then
msgbox(0,"state of the menuitem","17")
EndIf