|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » GUI, обработка функций вместе с ним. |
|
GUI, обработка функций вместе с ним.
|
Старожил Сообщения: 215 |
Профиль | Отправить PM | Цитировать Есть GUI, а также некоторые функции, которые работают достаточно долго, от нескольких секунд, до нескольких часов.
В связи с этим мне нужна остановка выполнения функции (но не выход из скрипта). Причём не только по горячей клавише. но и через GUI Примерная структура скрипта: ;Create GUI While 1 GUIProcess() WEnd Func GUIProcess() Switch GUIGetMsg() ;... Case $ButtonStop $NotStop=0 EndSwitch EndFunc Func Some() While 1 And $NotStop ;... GUIProcess() WEnd EndFunc http://www.autoitscript.com/forum/in...howtopic=95510 - здесь вроде бы то, что мне надо, но к сожалению, я не понял, как этим воспользоваться |
|
Отправлено: 12:35, 24-05-2009 |
Старожил Сообщения: 192
|
Профиль | Отправить PM | Цитировать |
Отправлено: 15:40, 24-05-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Старожил Сообщения: 307
|
Профиль | Отправить PM | Цитировать Цитата Sylver Dragon:
Цитата Sylver Dragon:
|
||
------- Отправлено: 15:42, 24-05-2009 | #3 |
Старожил Сообщения: 215
|
Профиль | Отправить PM | Цитировать Ну... Если бы у меня было что-то типо Sleep(n) - я бы даже не спрашивал и плюнул бы на это дело. А так, моя функция работает долго за счёт скачки файлов из интернета. Но качаю я то их в фоне. Поэтому и имею возможность при этом обрабатывать GUI.
То есть вот эта функция вызывыается достаточно часто: Func GetSourceOrFile($URL, $SourceOrFile = "Source", $PathToDownLoad = "") ; Готово #cs ---------------------------------------------------------------------------- Готово. Внешние связи: #include <File.au3>, переменная $AllowDownLoad для немедленного завершения и цикл обработки GUI {GUIProcess()} Получает файл или исходный текст файла в интернете. При этом обрабатывает GUI Возвращаемое значение: Исходный текст файла или пустая строка #ce ---------------------------------------------------------------------------- Local $Handle Local $Return = "" If $PathToDownLoad = "" Then $PathToDownLoad = _TempFile() $Handle = InetGet($URL, $PathToDownLoad, 0, 1) While (NOT(InetGetInfo($Handle, 2))) And $AllowDownLoad GUIProcess() WEnd InetClose($Handle) If $SourceOrFile = "Source" Then $Return = FileRead($PathToDownLoad) FileDelete($PathToDownLoad) EndIf Return $Return EndFunc |
------- Отправлено: 16:14, 24-05-2009 | #4 |
Старожил Сообщения: 192
|
Профиль | Отправить PM | Цитировать моя идея подойдёт - в функции паузы создать создать такую же форму или форму с кнопкой продолжить...
|
|
Последний раз редактировалось Twix1124, 24-05-2009 в 16:58. Отправлено: 16:38, 24-05-2009 | #5 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать У меня есть утилита работающая похожим образом. Для отмены действии (функции) я использую глобальную переменную, которой присваивается значение True если необходимо остановить функцию, а в самой функции в критичных местах проверяю эту переменную.
Цитата Sylver Dragon:
|
|
------- Отправлено: 18:21, 24-05-2009 | #6 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Использование некоторых функций AutoIt3Wrapper Gui | FlatX007 | AutoIt | 8 | 08-07-2009 18:26 | |
Не работает GUI после выхода другова GUI | sashadeg | AutoIt | 3 | 15-05-2009 22:03 | |
Перехват API функций | ники | Лечение систем от вредоносных программ | 23 | 09-04-2009 11:21 | |
Теория - Число функций n аргументов? | Gamover jr | Программирование и базы данных | 13 | 30-10-2007 09:25 | |
Java - Перегрузка функций библиотеки Win32API | EvgeniyQQQ | Программирование и базы данных | 2 | 02-10-2007 14:53 |
|