Что нового

[Элементы GUI] Смена вида интерфейса

benxomi

Новичок
Сообщения
37
Репутация
0
есть не большое окно
Код:
#include <GUIConstants.au3>

Opt("GUIOnEventMode", 1)  

$mainwindow = GUICreate("Пример", 600, 400)
$idFileMenu = GUICtrlCreateMenu("Меню")
$idFileMenu = GUICtrlCreateMenu("Главное меню")
$idFileItem = GUICtrlCreateMenuItem("Номер 1", $idFileMenu)
$idFileItem = GUICtrlCreateMenuItem("Номер 2", $idFileMenu)
$idFileItem = GUICtrlCreateMenuItem("Номер 3", $idFileMenu)
$idFileItem = GUICtrlCreateMenuItem("Номер 4", $idFileMenu)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
$okbutton = GUICtrlCreateButton("Страт", 70, 50, 60)
$okbutton = GUICtrlCreateButton("Стоп", 210, 50, 60)
$okbutton = GUICtrlCreateButton("Пауза", 280, 50, 60)
$okbutton = GUICtrlCreateButton("Пусто", 330, 50, 60)
GUICtrlSetOnEvent($okbutton, "OKButton")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)  
WEnd

Func OKButton()

  MsgBox(0, "GUI Event", "You pressed OK!")
EndFunc

Func CLOSEClicked()

  Exit
EndFunc

Многое тут не работает, ну это не суть, задача такая:
Что бы при включение скрипта не было видно кнопок(старт,стоп,пауза,пусто), а после нажатия Меню/Номер 2 появились кнопки(старт,стоп). При нажатие Меню/номер 4 появились кнопки(старт,пусто,пауза). При нажатия Главное меню вернулось к начальному виду, то есть нету этих кнопок
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Код:
#include <GUIConstants.au3>

Opt("GUIOnEventMode", 1)

$mainwindow = GUICreate("Пример", 600, 400)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
$idFileMenu1 = GUICtrlCreateMenu("Меню")
$idFileMenu2 = GUICtrlCreateMenu("Главное меню")
$idFileItem1 = GUICtrlCreateMenuItem("Номер 1", $idFileMenu2)
;~ GUICtrlSetOnEvent(-1, "idFileItem1")
$idFileItem2 = GUICtrlCreateMenuItem("Номер 2", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem2")
$idFileItem3 = GUICtrlCreateMenuItem("Номер 3", $idFileMenu2)
;~ GUICtrlSetOnEvent(-1, "idFileItem3")
$idFileItem4 = GUICtrlCreateMenuItem("Номер 4", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem4")
$okbutton1 = GUICtrlCreateButton("Старт", 70, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
GUICtrlSetOnEvent(-1, "OKButton1")
$okbutton2 = GUICtrlCreateButton("Стоп", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton2")
$okbutton3 = GUICtrlCreateButton("Пауза", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton3")
$okbutton4 = GUICtrlCreateButton("Пусто", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton4")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)
WEnd

Func OKButton1()
  MsgBox(0, "GUI Event", "Старт")
EndFunc

Func idFileItem2()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_SHOW)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func idFileItem4()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_HIDE)
  GUICtrlSetState($okbutton3, $GUI_SHOW)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func CLOSEClicked()
  Exit
EndFunc
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
Код:
#include <GUIConstants.au3>

Opt("GUIOnEventMode", 1)

$mainwindow = GUICreate("Пример", 600, 400)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
$idFileMenu1 = GUICtrlCreateMenu("Меню")
$idFileMenu2 = GUICtrlCreateMenu("Главное меню")
$idFileItem1 = GUICtrlCreateMenuItem("Номер 1", $idFileMenu2)
;~ GUICtrlSetOnEvent(-1, "idFileItem1")
$idFileItem2 = GUICtrlCreateMenuItem("Номер 2", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem2")
$idFileItem3 = GUICtrlCreateMenuItem("Номер 3", $idFileMenu2)
;~ GUICtrlSetOnEvent(-1, "idFileItem3")
$idFileItem4 = GUICtrlCreateMenuItem("Номер 4", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem4")
$okbutton1 = GUICtrlCreateButton("Старт", 70, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
GUICtrlSetOnEvent(-1, "OKButton1")
$okbutton2 = GUICtrlCreateButton("Стоп", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton2")
$okbutton3 = GUICtrlCreateButton("Пауза", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton3")
$okbutton4 = GUICtrlCreateButton("Пусто", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton4")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)
WEnd

Func OKButton1()
  MsgBox(0, "GUI Event", "Старт")
EndFunc

Func idFileItem2()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_SHOW)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func idFileItem4()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_HIDE)
  GUICtrlSetState($okbutton3, $GUI_SHOW)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func CLOSEClicked()
  Exit
EndFunc
Спасибо тебе, только я не нашёл где ты написал что бы на нажатие главное меню, вернулось всё как было, то есть пусто что бы было
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
benxomi [?]
не нашёл где ты написал что бы на нажатие главное меню
Я этого и не писал, потому что так делать не нужно. Учить плохому я вас не хочу - сами научитесь. Лучше "повесьте" данный функционал на обычный пункт меню - по аналогии (всем кнопкам установите состояние $GUI_HIDE).
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
benxomi [?]
не нашёл где ты написал что бы на нажатие главное меню
Я этого и не писал, потому что так делать не нужно. Учить плохому я вас не хочу - сами научитесь. Лучше "повесьте" данный функционал на обычный пункт меню - по аналогии (всем кнопкам установите состояние $GUI_HIDE).
По аналогии не вышло, он не возвращает в исходное положение как было и ошибок ни каких не выйдаёт
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
benxomi,
Предупреждение За нарушение общих правил (пункт В.2):
Старайтесь избегать “Over quoting” (преувеличенное цитирование) - цитируйте только необходимую часть сообщения, которая наилучшим образом подчеркнёт суть цитируемого.


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

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
benxomi
Пункт меню "Номер 1" возвращает в исходное состояние
Код:
#include <GUIConstants.au3>

Opt("GUIOnEventMode", 1)

$mainwindow = GUICreate("Пример", 600, 400)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
$idFileMenu1 = GUICtrlCreateMenu("Меню")
$idFileMenu2 = GUICtrlCreateMenu("Главное меню")
$idFileItem1 = GUICtrlCreateMenuItem("Номер 1", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem1")
$idFileItem2 = GUICtrlCreateMenuItem("Номер 2", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem2")
$idFileItem3 = GUICtrlCreateMenuItem("Номер 3", $idFileMenu2)
;~ GUICtrlSetOnEvent(-1, "idFileItem3")
$idFileItem4 = GUICtrlCreateMenuItem("Номер 4", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem4")
$okbutton1 = GUICtrlCreateButton("Старт", 70, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
GUICtrlSetOnEvent(-1, "OKButton1")
$okbutton2 = GUICtrlCreateButton("Стоп", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton2")
$okbutton3 = GUICtrlCreateButton("Пауза", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton3")
$okbutton4 = GUICtrlCreateButton("Пусто", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton4")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)
WEnd

Func OKButton1()
  MsgBox(0, "GUI Event", "Старт")
EndFunc

Func idFileItem1()
  GUICtrlSetState($okbutton1, $GUI_HIDE)
  GUICtrlSetState($okbutton2, $GUI_HIDE)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func idFileItem2()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_SHOW)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func idFileItem4()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_HIDE)
  GUICtrlSetState($okbutton3, $GUI_SHOW)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func CLOSEClicked()
  Exit
EndFunc
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
benxomi
Пункт меню "Номер 1" возвращает в исходное состояние
Код:
#include <GUIConstants.au3>

Opt("GUIOnEventMode", 1)

$mainwindow = GUICreate("Пример", 600, 400)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
$idFileMenu1 = GUICtrlCreateMenu("Меню")
$idFileMenu2 = GUICtrlCreateMenu("Главное меню")
$idFileItem1 = GUICtrlCreateMenuItem("Номер 1", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem1")
$idFileItem2 = GUICtrlCreateMenuItem("Номер 2", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem2")
$idFileItem3 = GUICtrlCreateMenuItem("Номер 3", $idFileMenu2)
;~ GUICtrlSetOnEvent(-1, "idFileItem3")
$idFileItem4 = GUICtrlCreateMenuItem("Номер 4", $idFileMenu2)
GUICtrlSetOnEvent(-1, "idFileItem4")
$okbutton1 = GUICtrlCreateButton("Старт", 70, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
GUICtrlSetOnEvent(-1, "OKButton1")
$okbutton2 = GUICtrlCreateButton("Стоп", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton2")
$okbutton3 = GUICtrlCreateButton("Пауза", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton3")
$okbutton4 = GUICtrlCreateButton("Пусто", 210, 50, 60)
GUICtrlSetState(-1, $GUI_HIDE)
;~ GUICtrlSetOnEvent(-1, "OKButton4")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)
WEnd

Func OKButton1()
  MsgBox(0, "GUI Event", "Старт")
EndFunc

Func idFileItem1()
  GUICtrlSetState($okbutton1, $GUI_HIDE)
  GUICtrlSetState($okbutton2, $GUI_HIDE)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func idFileItem2()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_SHOW)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func idFileItem4()
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_HIDE)
  GUICtrlSetState($okbutton3, $GUI_SHOW)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

Func CLOSEClicked()
  Exit
EndFunc
Ну это то понятно, а как вернуть на исходно место, нажав Меню, а не главное (главное меню\номер 1) Таким же способом не выходит почему-то.
А ещё можешь сказать на каждом номере, допустим (главное меню/номер 2, номер 3, номер 4) будет по 2 кнопки старт и стоп.
Как запустить и остановить скрипт по нажатию этой кнопки, только надо что бы на номер 2, запускался скрипт(а) на номер 3 запускался скрипт(б), ну и на номер 4 запускался скрипт(в).И точно так же останавливался на кнопку стоп в каждом номере.
Пытался сделать так
Код:
While 1   
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            ExitLoop
        Case $okbutton1
While 1  ; но во первых он не заработал и вторых я не знаю как указать что бы он работал например в номере 3 только
$left='3'
$top='51'
$right='1116'
$bottom='758'
$color='0xF3970C'
$hwnd='Авалон'
Opt("PixelCoordMode", 2)
$pos = PixelSearch ( $left, $top, $right, $bottom, $color, $hwnd)
If Not @error Then
    ControlClick("","","[CLASS:; INSTANCE:1]","left",1,$pos[0],$pos[1])
EndIf
Sleep(3000)
WEnd
   EndSwitch
WEnd
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
benxomi [?]
вернуть на исходно место, нажав Меню
Я же вам написал - так делать не нужно. Главное меню окна предназначено для вызова подменю, а не для запуска функций.

что бы на номер 2, запускался скрипт(а)
Можно отмечать выбранный пункт "галочкой", а у остальных - снимать отметки
Код:
Func idFileItem2()
  GUICtrlSetState($idFileItem1, $GUI_UNCHECKED)
  GUICtrlSetState($idFileItem2, $GUI_CHECKED)
  GUICtrlSetState($idFileItem3, $GUI_UNCHECKED)
  GUICtrlSetState($idFileItem4, $GUI_UNCHECKED)
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_SHOW)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

А при нажатии кнопки проверять отметку нужного пункта и выполнять соответствующие действия
Код:
Func OKButton1()
  If BitAND(GUICtrlRead($idFileItem2), $GUI_CHECKED) Then
    MsgBox(0, "GUI Event", "Отмечен пункт 'Номер 2'")
    Run("script_A.exe")
  EndIf
  If BitAND(GUICtrlRead($idFileItem3), $GUI_CHECKED) Then
    MsgBox(0, "GUI Event", "Отмечен пункт 'Номер 3'")
    Run("script_B.exe")
  EndIf
EndFunc
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
benxomi [?]
вернуть на исходно место, нажав Меню
Я же вам написал - так делать не нужно. Главное меню окна предназначено для вызова подменю, а не для запуска функций.

что бы на номер 2, запускался скрипт(а)
Можно отмечать выбранный пункт "галочкой", а у остальных - снимать отметки
Код:
Func idFileItem2()
  GUICtrlSetState($idFileItem1, $GUI_UNCHECKED)
  GUICtrlSetState($idFileItem2, $GUI_CHECKED)
  GUICtrlSetState($idFileItem3, $GUI_UNCHECKED)
  GUICtrlSetState($idFileItem4, $GUI_UNCHECKED)
  GUICtrlSetState($okbutton1, $GUI_SHOW)
  GUICtrlSetState($okbutton2, $GUI_SHOW)
  GUICtrlSetState($okbutton3, $GUI_HIDE)
  GUICtrlSetState($okbutton4, $GUI_HIDE)
EndFunc

А при нажатии кнопки проверять отметку нужного пункта и выполнять соответствующие действия
Код:
Func OKButton1()
  If BitAND(GUICtrlRead($idFileItem2), $GUI_CHECKED) Then
    MsgBox(0, "GUI Event", "Отмечен пункт 'Номер 2'")
    Run("script_A.exe")
  EndIf
  If BitAND(GUICtrlRead($idFileItem3), $GUI_CHECKED) Then
    MsgBox(0, "GUI Event", "Отмечен пункт 'Номер 3'")
    Run("script_B.exe")
  EndIf
EndFunc
А можно ли всё таки сделать как я описал выше(главное меню/номер 2, номер 3, номер 4) будет по 2 кнопки старт и стоп.
Как запустить и остановить скрипт по нажатию этой кнопки, только надо что бы на номер 2, запускался скрипт(а) на номер 3 запускался скрипт(б), ну и на номер 4 запускался скрипт(в).И точно так же останавливался на кнопку стоп в каждом номере).
А выбрать пункт галочкой у меня будет только не для этого, из-за этого надо назначить каждой клавиши(старт/стоп) запуск определенного скрипта и остановки
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
benxomi [?]
можно ли всё таки сделать как я описал выше
Я не пойму - вы хотите, чтобы за вас весь код написали? Тогда обращайтесь в Стол заказов.
Если вас интересует принципиальный вопрос "можно или нет", то да - можно. Если у вас будут для каждого пункта меню свои индивидуальные кнопки, то отметки в пунктах вам не нужны, т.к. каждый раз пользователь будет видеть только те кнопки, которые вы ему показываете. Следовательно, не нужно никаких условий, а просто собственная обработка каждой кнопки.
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
benxomi [?]
можно ли всё таки сделать как я описал выше
Я не пойму - вы хотите, чтобы за вас весь код написали? Тогда обращайтесь в Стол заказов.
Если вас интересует принципиальный вопрос "можно или нет", то да - можно. Если у вас будут для каждого пункта меню свои индивидуальные кнопки, то отметки в пунктах вам не нужны, т.к. каждый раз пользователь будет видеть только те кнопки, которые вы ему показываете. Следовательно, не нужно никаких условий, а просто собственная обработка каждой кнопки.
Вот именно что кнопки то одни и те-же, нет я не хочу чтоб за меня всё написали, я показал как я пытался запустить иное действие по кнопке старт, но не вышло. Что в нём не так, почему он не начинает работу?
While 1
Switch GUIGetMsg()
Case $GUI_EVENT_CLOSE
ExitLoop
Case $okbutton1
While 1
$left='3'
$top='51'
$right='1116'
$bottom='758'
$color='0xF3970C'
$hwnd='Авалон'
Opt("PixelCoordMode", 2)
$pos = PixelSearch ( $left, $top, $right, $bottom, $color, $hwnd)
If Not @error Then
ControlClick("","","[CLASS:; INSTANCE:1]","left",1,$pos[0],$pos[1])
EndIf
Sleep(3000)
WEnd
EndSwitch
WEnd
Не нашёл информации по этому, как указать в каком из номеров он должен работать
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
benxomi [?]
почему он не начинает работу
Потому что сначала вы пытались работать в режиме OnEvent, а теперь хотите обрабатывать события в режиме MessageLoop. Вам нужно определиться, в каком режиме GUI вы планируете работать. Изучайте: режим MessageLoop и режим OnEvent.
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
benxomi [?]
почему он не начинает работу
Потому что сначала вы пытались работать в режиме OnEvent, а теперь хотите обрабатывать события в режиме MessageLoop. Вам нужно определиться, в каком режиме GUI вы планируете работать. Изучайте: режим MessageLoop и режим OnEvent.
Но если сделать в режиме OnEvent то запускаться как хочу будет?
 
Автор
B

benxomi

Новичок
Сообщения
37
Репутация
0
InnI сказал(а):
benxomi [?]
запускаться как хочу будет?
Будет. И я даже показал, как это сделать (см. Ответ #8)
А без Run запустить работу можно? у меня просто код
Код:
While 1
$left='3';Левая координата области для поиска
$top='51';Верхняя
$right='1116';Праввая
$bottom='758';нижняя
$color='0xF3970C';Цвет пиксела
$hwnd='Авалон'
Opt("PixelCoordMode", 2)
$pos = PixelSearch ( $left, $top, $right, $bottom, $color, $hwnd)
If Not @error Then
    ControlClick("","","[CLASS:; INSTANCE:1]","left",1,$pos[0],$pos[1])
EndIf
Sleep(3000)
WEnd
Я понял как запустить, но как потом это дело остановить?
Код:
#include <GUIConstantsEx.au3>

Opt("GUIOnEventMode", 1)  ; Включает режим OnEvent
$mainwindow = GUICreate("Привет мир", 200, 100)
GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
GUICtrlCreateLabel("Привет мир! Как дела?", 30, 10)
$okbutton = GUICtrlCreateButton("OK", 70, 50, 60)
GUICtrlSetOnEvent($okbutton, "OKButton")
GUISetState(@SW_SHOW)

While 1
  Sleep(1000)  ; Цикл ожидания
WEnd
Func OKButton()
While 1
$left='3';Левая координата области для поиска
$top='51';Верхняя
$right='1116';Праввая
$bottom='758';нижняя
$color='0xF3970C';Цвет пиксела
$hwnd='Авалон'
Opt("PixelCoordMode", 2)
$pos = PixelSearch ( $left, $top, $right, $bottom, $color, $hwnd)
If Not @error Then
    ControlClick("","","[CLASS:; INSTANCE:1]","left",1,$pos[0],$pos[1])
EndIf
Sleep(3000)
WEnd
EndFunc
Func CLOSEClicked()
  ;Примечание: в этом месте @GUI_CtrlId равен $GUI_EVENT_CLOSE,
  ;и @GUI_WinHandle равен $mainwindow
  MsgBox(0, "Событие GUI", "Вы нажали CLOSE! Завершаем...")
  Exit
EndFunc
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
OffTopic:
benxomi
Когда я говорил про "другую тему" я имел в виду, что остановка цикла по кнопке никакого отношения не имеет к смене вида интерфейса. А ссылка на тему - это как пример. Либо вы разбираетесь и переделываете под свои нужды, либо ищите подобные темы (их много - вы не первый), либо обращаетесь в "Стол заказов".
 
Верх