|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Прогресс бар |
|
|
[решено] Прогресс бар
|
Ветеран Сообщения: 838 |
Мне нужен прогресс бар чтоб запустить в начале кода, и к завершению чтоб он был 100% типо как заставка
Я вставил в начало ProgressOn() далее код проги идёт и в конце Progressff() Но он просто висит без всякого прогресса! В ProgressSet тоже ничего путного не найду. Sleep() тут как бы не уместен. Потомучто нужен результат хода работы скрипта, а не виртуальное засыпание... ? --------- Я пока хитро зделал ![]() |
|
------- Отправлено: 05:22, 14-02-2009 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата semiono:
|
|
------- Отправлено: 11:15, 14-02-2009 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 838
|
Профиль | Отправить PM | Цитировать Нет, там задаётся Sleep(1000) и по нему отсчитывается прогресс. Мне кажется тут совсем ничего не поделаешь. А мой пример самый нормальный, особенно если скрипт работает быстро.
|
------- Отправлено: 14:23, 14-02-2009 | #3 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата semiono:
![]() |
|
------- Отправлено: 14:49, 14-02-2009 | #4 |
Ветеран Сообщения: 838
|
Профиль | Отправить PM | Цитировать Ну это вы с сарказмом так. Прогресс бар должен отображать ход работы, другое дело что его пример не совсем удачный в хелпе и вообще не ясно что с ним можно зделать. Я лишь как прикол нашёл решение, всё лучше чем ничего.
Creat0R, что-то вы не в духе сегодня. Я пожалуй спрячусь подальше на время... |
|
------- Отправлено: 14:57, 14-02-2009 | #5 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата semiono:
Цитата semiono:
ProgressOn("Заголовок", "Главный текст", "Под-текст") $iPrecent = 0 While 1 ;Тут выполняется что угодно ;Увеличиваем прогресс на 5 единиц $iPrecent += 5 ProgressSet($iPrecent, "Под-текст, проценты: " & $iPrecent & "%") ;Спим 0.5 секунд Sleep(500) If $iPrecent = 100 Then ExitLoop WEnd MsgBox(262144+64, "Фенито!", "Прогресс окончен!", 0, WinGetHandle("Заголовок")) Цитата semiono:
P.S А тему назвали неудачно, переименуйте во что-то более вразумительное ![]() |
|||
------- Отправлено: 22:56, 14-02-2009 | #6 |
Ветеран Сообщения: 838
|
Профиль | Отправить PM | Цитировать Изначально хотел назвать, типа графическое оформление, что и было почти, но думаю на одном таск баре и остановимся.
Цитата Creat0R:
А тут получается для него надо всю функцию расписать. Я бы просто, извините с разработчиками поспорил, так как нет смысла в редактировании такой простой штуки... уже бы было всё в # include прописанно одним вызовом чтоб. Я только этот случай имею ввиду! Вот именно этим я и озадачился. Мы же не описываем функцию RegWrite() например, только поля редактирум! |
|
------- Отправлено: 11:23, 15-02-2009 | #7 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата semiono:
Мне просто интересно, как функция будет знать сколько устанавливать прогресс? когда менять его, или имеется в виду чтобы он покругу ходил как маятник? ![]() |
|
------- Отправлено: 12:02, 15-02-2009 | #8 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Тогда вот так например:
#include <Timers.au3> Global $i_Timer, $h_Timer_GUI, $i_Precent = 0 _ProgressOn("Заголовок", "Главный текст", "Под-текст") While 1 ;Тут выполняется что угодно Sleep(5000) ExitLoop WEnd _Timer_KillTimer($h_Timer_GUI, $i_Timer) ProgressSet(100, "Проценты: 100%") MsgBox(262144+64, "Фенито!", "Прогресс окончен!", 0, WinGetHandle("Заголовок")) Func _ProgressOn($sTitle="", $sMainText="", $sSubText="", $iXPos=-1, $iYPos=-1, $iOpt=16) ProgressOn($sTitle, $sMainText, $sSubText, $iXPos, $iYPos, $iOpt) $h_Timer_GUI = GUICreate("__TIMER__") $i_Timer = _Timer_SetTimer($h_Timer_GUI, 100, "_ProgressSet") EndFunc Func _ProgressSet($hWnd, $Msg, $iIDTimer, $dwTime) ;Увеличиваем прогресс на 5 единиц $i_Precent += 5 ProgressSet($i_Precent, "Проценты: " & $i_Precent & "%") ;Если достигли 100 процентов, сбрасываем на 0. If $i_Precent = 100 Then $i_Precent = 0 EndFunc |
------- Отправлено: 12:22, 15-02-2009 | #9 |
Ветеран Сообщения: 838
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
Это только в lowlevel code language надо всё вручную собирать ![]() Хотя gif анимация тоже часто присутствует, тоже круговая неподконтрольная. Сегодня у чувака подпись увидел, прямо в тему ![]() Цитата:
|
||
------- Последний раз редактировалось semiono, 15-02-2009 в 13:54. Отправлено: 13:08, 15-02-2009 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Вставка прогресс бара в функцию | Medic84 | AutoIt | 52 | 07-04-2014 00:19 | |
Интернет - [addon] Яндекс.Бар - панель инструментов для Internet-браузера | anddy | Наборы обновлений для Windows XP/2003/Windows 7 | 3 | 27-07-2011 14:47 | |
[решено] Верхний бар HP Pavilion 2040 | benwar | Ноутбуки | 2 | 08-01-2010 01:09 | |
[решено] [PHP] Прогресс-бар (счетчик игроков) | D_Master | Вебмастеру | 3 | 27-03-2009 18:41 |
|