1 (изменено: VlaDOS, 2012-04-04 09:14:07)

Тема: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

Всем добрый день! Нужна помощь, а именно создана программа на AHK GUI в ней идет перебор файлов- достаточно длительный процесс, после которого выходит MSG об окончании выполнения. Но в промежутки между началом и сообщением вообще нечего не видно и невозможно понять он завис или все таки работает. Хотел с помощью прогресса показать пользователю что операция выполняется. В отдельном окне.  Приведите любой пример для наглядности.

Gui, Add, Progress, x6 y40 w460 h20 , 25
Gui, Add, Text, x6 y10 w240 h20 , Ждите завершения процесса
Gui, Show, x229 y182 h87 w477,

Было здорово чтобы, тут разделили на [i]GUI и на просто код, по подразделам - а то 31 вкладку пока пересмотрел...((  может даже что то пропустил...[/i]

2

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

А не проще просто показывать количество перебранных файлов?

Было здорово чтобы у нас тут разделили GUI  на просто код, по подразделам - а то 31 вкладку пока пересмотрел...(( а может даже что то пропустил...

Что-то ничего не пойму.

3 (изменено: VlaDOS, 2012-04-04 09:16:34)

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

YMP Можно, проще... но я так и не понял как с компонентом Прогресс пользоваться. Может кто знает - подскажет.

4

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

А что значит "как пользоваться"? Если как полоску двигать, то вот пример:

Gui, Add, Progress, x6 y40 w460 h20 vProgress
Gui, Add, Text, x6 y10 w240 h20 , Ждите завершения процесса
Gui, Show, x229 y182 h87 w477

Loop, 100
{
    GuiControl,, Progress, +1
    Sleep, 100
}

GuiClose:
    ExitApp

5

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

Да, да точно, спасибо!

6 (изменено: Uniors, 2012-11-02 20:41:19)

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

Возможна ли работа одновременно двух индикаторов прогресса? отвечающих за разные действия, запуск второго приводит к остановке первого индикатора

7 (изменено: creature.ws, 2012-11-02 20:52:19)

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

Не приводит

Gui, Add, Progress, x6 y40 w460 h20 vProgress1
Gui, Add, Progress, xp y+2 w460 h20 vProgress2
Gui, Add, Text, x6 y10 w240 h20 , Ждите завершения процесса
Gui, Show

Loop, 100
{
    GuiControl,, Progress1, +1
    GuiControl,, Progress2, +2
    Sleep, 30
}

GuiClose:
    ExitApp

В вашем конкретном случае — приводит. Но причина этого не в индикаторе прогресса, попробуйте изменять позицию индикатора при помощи таймера. Два таймера «параллельно» работать могут.

8 (изменено: Uniors, 2012-11-02 21:10:50)

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

Оба индикатора замораживаются если по завершению нужно выполнить отчет, а главное они должны выполняться с разной скоростью

#SingleInstance force
Gui, Add, Progress, x6 y40 w460 h20 vProgress1
Gui, Add, Progress, xp y+2 w460 h20 vProgress2
Gui, Add, Text, x6 y10 w240 h20 , Ждите завершения процесса
Gui, Show

Loop, 100
{
{
    if A_Index > 100
        break
    GuiControl,, Progress1, +1
Sleep, 50
}
  {
    if A_Index > 100
        break
    GuiControl,, Progress2, +2
Sleep, 100
}
TrayTip, Внимание!, Прогресс бар 1 завершен, 5, 1
return
  }
TrayTip, Внимание!, Прогресс бар 2 завершен, 5, 1
return

9 (изменено: creature.ws, 2012-11-02 21:21:30)

Re: AHK: GUI Progress (индикатор прогресса) - как прикрутить к скрипту?

Почитайте лучше справку.

Loop, 100
{
{ ; зачем здесь эта скобка?
    if A_Index > 100 ; A_index никогда не будет > 100
        break
    GuiControl,, Progress1, +1
Sleep, 50
}
  { ; зачем здесь эта скобка?
    if A_Index > 100 ; A_index никогда не будет > 100
        break
    GuiControl,, Progress2, +2
Sleep, 100
}
TrayTip, Внимание!, Прогресс бар 1 завершен, 5, 1
return ; какую функцию выполняет return в теле цикла?
  }