Что нового

Помогите в оформлении скрипта

Undertaker

Новичок
Сообщения
2
Репутация
0
Почему несмотря на то какие я введу значения для $i1,$i2,$i3,$i4 всё равно в ини файле сохраняется значение 3,4,5,6?

Код:
Example()

Func Example()
    Local $Button_1,$msg, $Gui, $checkbox,$Button_2,$i1,$i2,$i3,$i4
    $Gui = GUICreate("BotV2.1",350,150) ; Создаёт окно в центре экрана
	$i1 = GUICtrlCreateInput('1',10,50,20)
	$i2 = GUICtrlCreateInput('2',30,50,20)
	$i3 = GUICtrlCreateInput('3',50,50,20)
	$i4 = GUICtrlCreateInput('4',70,50,20)
    GUICtrlCreateLabel('Последовательность выбора танков',90,53)
	$checkbox = GUICtrlCreateCheckbox( 'Выходить в ангар если танк взорван', 10,20)
    $Button_1 = GUICtrlCreateButton("Запустить бот", 2,70, 345)
	$Button_2 = GUICtrlCreateButton('Сохранить настройки',2,90,345)
    GUISetState() ; показывает созданное окно
    ; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
    While 9
        $msg = GUIGetMsg()
		Switch $msg
	 Case $Button_2
	  IniWrite('options.ini','Tanks','order', $i1 & ',' & $i2 & ',' & $i3 & ',' & $i4)
	  
		EndSwitch
    WEnd
	GUIDelete('botv2.1')
 EndFunc
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4 020
Репутация
622
Re: [Элементы GUI] Помогите в оформлении скрипта

Предупреждение За нарушение правил форума (пункт В.11):
Любые отрывки AutoIt кода необходимо заключать в тег [autoit]
(подробнее), а обычный код соответственно в тег [code]
(подробнее). Также большие выдержки текста помещайте под тег [spoiler]
(подробнее), там где это поддерживается естественно. Как в случае с названием темы, также короткое и эргономичное сообщение привлекает больше внимания, и шансы на получение конкретного ответа увеличиваются.


С уважением, ваш Глобальный модератор.
 

winstan

Эксплотатор)
Сообщения
406
Репутация
78
Код:
Example()

Func Example()
    Local $Button_1,$msg, $Gui, $checkbox,$Button_2,$i1,$i2,$i3,$i4
    $Gui = GUICreate("BotV2.1",350,150) ; Создаёт окно в центре экрана
    $i1 = GUICtrlCreateInput('1',10,50,20)
    $i2 = GUICtrlCreateInput('2',30,50,20)
    $i3 = GUICtrlCreateInput('3',50,50,20)
    $i4 = GUICtrlCreateInput('4',70,50,20)
    GUICtrlCreateLabel('Последовательность выбора танков',90,53)
    $checkbox = GUICtrlCreateCheckbox( 'Выходить в ангар если танк взорван', 10,20)
    $Button_1 = GUICtrlCreateButton("Запустить бот", 2,70, 345)
    $Button_2 = GUICtrlCreateButton('Сохранить настройки',2,90,345)
    GUISetState() ; показывает созданное окно
    ; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
    While 9
        $msg = GUIGetMsg()
        Switch $msg
			Case $Button_2
				$i1_=GUICtrlRead($i1)
				$i2_=GUICtrlRead($i2)
				$i3_=GUICtrlRead($i3)
				$i4_=GUICtrlRead($i4)
      IniWrite('options.ini','Tanks','order', $i1_ & ',' & $i2_ & ',' & $i3_ & ',' & $i4_)

        EndSwitch
    WEnd
    GUIDelete('botv2.1')
 EndFunc

Ты сохраняешь в фаил не значения из формы а иды окошек
 
Автор
U

Undertaker

Новичок
Сообщения
2
Репутация
0
А как тогда сделать так чтобы он загружал настройки?
Типо 1 раз запускаешь чекбокс не активен, ты его активируешь и в следующий раз при запуске он уже активен.
 

Zaramot

I ♥ AutoIt
Сообщения
1 160
Репутация
658
Код:
Example()

Func Example()
    Local $Button_1,$msg, $Gui, $checkbox,$Button_2,$i1,$i2,$i3,$i4
    $Gui = GUICreate("BotV2.1",350,150) ; Создаёт окно в центре экрана
    $i1 = GUICtrlCreateInput('1',10,50,20)
    $i2 = GUICtrlCreateInput('2',30,50,20)
    $i3 = GUICtrlCreateInput('3',50,50,20)
    $i4 = GUICtrlCreateInput('4',70,50,20)
    GUICtrlCreateLabel('Последовательность выбора танков',90,53)
    $checkbox = GUICtrlCreateCheckbox( 'Выходить в ангар если танк взорван', 10,20)
    $Button_1 = GUICtrlCreateButton("Запустить бот", 2,70, 345)
    $Button_2 = GUICtrlCreateButton('Сохранить настройки',2,90,345)
    GUISetState() ; показывает созданное окно
    ; Запускается цикл опроса GUI до тех пор пока окно не будет закрыто
	$Angar = IniRead('options.ini','Tanks','angar', '')
	If $Angar = 1 Then GUICtrlSetState($checkbox, 1)

	$Order = IniRead('options.ini','Tanks','order', '')
	If Not $Order = '' Then
		$ORD = StringSplit($Order, ',')
		GUICtrlSetData($i1, $ORD[1])
		GUICtrlSetData($i2, $ORD[2])
		GUICtrlSetData($i3, $ORD[3])
		GUICtrlSetData($i4, $ORD[4])
	EndIf

    While 9
        $msg = GUIGetMsg()
        Switch $msg
			Case -3
				Exit
            Case $Button_2
                $i1_=GUICtrlRead($i1)
                $i2_=GUICtrlRead($i2)
                $i3_=GUICtrlRead($i3)
                $i4_=GUICtrlRead($i4)
				IniWrite('options.ini','Tanks','order', $i1_ & ',' & $i2_ & ',' & $i3_ & ',' & $i4_)
				$CheckState = GUICtrlRead($checkbox)
				IniWrite('options.ini','Tanks','angar', $CheckState)
        EndSwitch
    WEnd
 EndFunc
 
Верх