Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 4)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

Открыть новую тему     Написать ответ в эту тему

gyra

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

 
Описание:

Цитата:
AutoIt v3 - это язык для написания сценариев, напоминающий BASIC. Основным его назначением является автоматизация работ с Windows GUI (графическим интерфейсом пользователя MS Windows). Для выполнения этой сложной задачи предоставляется комбинация испытанных методов, включающих в себя эмуляцию нажатий комбинаций клавиш клавиатуры, перемещения указателя мыши, управление окнами и их визуальными элементами. Как показывает практика, эти "приводные ремни" весьма эффективны для получения работающих решений в ситуациях, когда другие стандартные средства (например, VBScript и SendKeys) оказываются бессильны.
Умеет он очень и очень многое! Бесплатный.

 
  • Справки
  • Инструменты
  • Ресурсы, посвящённые AutoIt
  • Полезные советы новичкам и не только
  • Готовые решения
  • Версии для устаревших Windows
  • Скрипт раскраски кода AutoIt для публикации в форумах
     


     
    За шапкой следит ViSiToR / AZJIO  

  • Всего записей: 7932 | Зарегистр. 18-02-2006 | Отправлено: 10:49 23-01-2020 | Исправлено: Egor2020, 14:02 22-03-2021
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    мне нужен бесконечный прогресс-бар

    Такое не существует. Он показывает % выпонения чего-либо. По этому либо остановить на скольки-то процентах, либо зациклить выполнение (прогресс постояно туда-сюда), но так установка не работает.

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 13:52 09-06-2025 | Исправлено: yaol1, 13:54 09-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    а вы посмотрели этот скомпиленный код?
    ну, чтобы он шел, как в моем коде, но не убивался сам.

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 14:43 09-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Wu Tang
    Конечно. Это не скомпелированный код. Это исходник причем только алгоритм. Где "..." это Ваш желаемый код. Последний раз - прогресс в любом языке программирования это показ процентов (обычно от 0 до 100) выполнения чего либо. Хотите придумать новый компонент всех языков программирования "бесконечный пронресс-бар"? Дерзайте.
    ПС
    Конечно, можно выставить Sleep(неделя) Но тогда он бкдет ползти 1% в неделю...
    Что такое Progress В примере комментарии.
    ПСПС
    Хорошо... У прогресса ксть начало и есть конец. Он ползёт от начала до конца. Ответьте себе как он может двигаться бесконечно? Бесконечно он может только осановится.

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 15:16 09-06-2025 | Исправлено: yaol1, 15:34 09-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    может я, конечно, чего-то не понимаю, ну вот тут бегает зеленая полоска в течение 5 секунд и закрывается, так вот нельзя чтобы она бегала бесконечно, пока запущен скрипт.
    те он здесь двигается по сути без начала и конца, слева выходит, справа заходит, ну вот пусть бы выходила и заходила полоска, пока не убью скрипт.
    или такое сделать невозможно? типа зациклить.

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 15:41 09-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    может я, конечно, чего-то не понимаю

    Нужно формулировать правильно.  
    Возможный вариант алгормтма:
     
    Создаём форму и на ней элементы.
    Слежение за закрытием формы (например Do)
    Переходим на функцию прогресса
    Функция прогресса
     Цикл От 0 до 100 (это ход прогресса)
      Присваиваем прогрессу значение цикла
      Пауза выполнения Sleep
      Если нажата кнопка выхода, то останавливаем прогресс и выход
      Если нажата кнопка закрытия формы то останавливаем прогресс и выход (дубляж. Можно ролпустить, но будет задержка)
     Конец цикла
    Конец функции прогресса
    Переходим на функцию прогресса (зацикливаем)
    Конец Do. условие - если нажата кнопка закрытия формы то останавливаем прогресс и выход  
    Выход
     
    На вскидку. Дальше сам. Не вижу смысла в этой фигне.

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 16:29 09-06-2025 | Исправлено: yaol1, 16:32 09-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    мне такое не написать ))) ну, ладно может найду готовое решение, спасибо.

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 16:43 09-06-2025
    Skif_off

    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    А вообще сочетать $PBS_MARQUEE с $WM_TIMER и PlayProgressBar - это нормально?

    Всего записей: 6710 | Зарегистр. 28-01-2008 | Отправлено: 17:30 09-06-2025
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Wu Tang

    Код:
    ProgressOn ( "infinite progressbar", "Please Wait...", "wait..."); создаём окно с прогрессбаром
    While 1 ; крутим бесконечный цикл
        Sleep(1000) ; пауза 1 сек
        ProgressSet(Random (0, 100, 1)); назначем случайное значение от 0 до 100 процентов
    WEnd

    Всего записей: 1649 | Зарегистр. 01-05-2006 | Отправлено: 22:50 09-06-2025 | Исправлено: ynbIpb, 22:53 09-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ynbIpb
    Класс, спасибо!
    те каждое следующее положение полоски случайное?
    ps кстати, а цвет полоски зеленый возможно ли изменить, просто любопытно.

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 00:27 10-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    кстати, а цвет полоски зеленый возможно ли изменить, просто любопытно.

    Я же давал ссылку. Выдержка из хелпера:  
    GUICtrlSetColor(-1, 32250); не работает в стиле Windows XP

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 05:26 10-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    я почитал, но я не пойму теперь в какое место скрипта это код вставить, цвет подобрал допустим -
    GUICtrlSetColor(-1, 0x3498DB)

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 07:22 11-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Wu Tang
    После GUICtrlCreateProgress

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 08:14 11-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    так, а тут ведь нет такой команды - http://forum.ru-board.com/topic.cgi?forum=5&topic=50447&start=320#9

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 08:20 11-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

    Цитата:
    так, а тут ведь нет такой команды

    Тут есть

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 10:38 11-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    так я то хотел бы добавить ее в скрипт, который предложил ynbIpb


    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 23:53 11-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Wu Tang

    Цитата:
    так я то хотел бы добавить ее в скрипт, который предложил ynbIpb

    ynbIpb дал кусок кода на сам прогресс для вставки в общий код.
    И прекратите тролить руборд. Открывать школу программирования тут никто не будет. Уж извините.
    Попросите кого-нить сделать эту шнягу. Это займет совсем не много времени. Кому делать совсем нечего. И в шапке есть всё для самообучения.  
    ПС
    Я это делать не буду т.к. это ненужная и вредная хрень с непонятной целью.

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 16:49 12-06-2025 | Исправлено: yaol1, 17:46 12-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    yaol1
    Я предположил, что это готовый код, самостоятельный.
    Мне совершенно непонятен ваш негатив , во-первых, к чему говорить, что это ненужная и тем более вредная хрень, во-вторых, цель вполне понятная - мне нужно сделать видимость процесса установки из 7zsfx пакета, тк в нем это не поддерживается.
    Насчет попросить, так я и обратился за помощью сюда, в связи с тем, что не разбираюсь, тк написать это, тому кто разбирается, наверняка не составит труда...


    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 02:27 13-06-2025
    yaol1



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Wu Tang
    Нет негатива. От слова совсем.
    Написал в личку почему и как.

    Всего записей: 1550 | Зарегистр. 08-01-2008 | Отправлено: 05:37 13-06-2025
    ynbIpb



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Wu Tang
    мой пример это примитивный прогресс без возможностей как-то его кастомизировать.
    Если нужно играться, то придётся рисовать все элементы. Но цвет не задаётся как у других элментов. Он только через тему винды. Гемор.

    Код:
    #include <GUIConstantsEx.au3>
    #include <ProgressConstants.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    #include <SendMessage.au3>
     
    $Form1 = GUICreate("infinite progressbar", 375, 123, 331, 333); рисуем форму
    $Label1 = GUICtrlCreateLabel("Please Wait...", 16, 8, 332, 17)
    $Label2 = GUICtrlCreateLabel("wait...", 16, 88, 340, 17)
    $Progress1 = GUICtrlCreateProgress(16, 48, 334, 17); создаём програссбар
    _SendMessage(GUICtrlGetHandle($Progress1), $PBM_SETSTATE, 3); посылаем ему сообщение
    GUISetState(@SW_SHOW)
    $hTimer = TimerInit() ; запускаем таймер
    While 1 ; крутим бесконечный цикл
        $nMsg = GUIGetMsg()
        Switch $nMsg
            Case $GUI_EVENT_CLOSE
                Exit
        EndSwitch
        If TimerDiff ($hTimer) > 1000 Then ; проверяем таймер
            GUICtrlSetData ($Progress1, Random (0, 100, 1)); назначем случайное значение от 0 до 100 процентов
            $hTimer = TimerInit() ; запускаем таймер
        EndIf
    WEnd

    Всего записей: 1649 | Зарегистр. 01-05-2006 | Отправлено: 23:02 17-06-2025
    Wu Tang



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ynbIpb
    Классно!
    А желтый ползунок в данном случае тоже получается не прописан в скрипте, а берется из темы винды?
    ps кстати, не подскажите, как можно пакетно скомпилить, скажем десяток *.au3 в exe, а то по одному так достает.

    ----------
    Всему свое время и каждому свой час!
    Хочешь жить - умей вертеться!

    Всего записей: 4228 | Зарегистр. 15-10-2007 | Отправлено: 07:43 18-06-2025
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

    Компьютерный форум Ru.Board » Компьютеры » Программы » AutoIT (Часть 4)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.B0ard
    © Ru.B0ard 2000-2025

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru