GdccGlobal.TgdccProgress
Материал из GedeminWiki
(Различия между версиями)
SYSDBA (обсуждение | вклад) (Новая страница: «{{ClassDef_Template|unit={{#explode:{{PAGENAME}}|.|0}}|class={{#explode:{{PAGENAME}}|.|1}}|src=TgdccProgress = class(TObject)}} == Описание == <onlyincl…») |
SYSDBA (обсуждение | вклад) |
||
| (не показаны 3 промежуточные версии 1 участника) | |||
| Строка 3: | Строка 3: | ||
== Описание == | == Описание == | ||
| − | <onlyinclude>Класс для организации прогресс бара.</onlyinclude> | + | <onlyinclude>Класс для организации прогресс бара (progress bar).</onlyinclude> |
Пример использования в скрипт-функиях: | Пример использования в скрипт-функиях: | ||
| Строка 15: | Строка 15: | ||
Set P = Creator.GetObject(nil, "TgdccProgress", "") | Set P = Creator.GetObject(nil, "TgdccProgress", "") | ||
| − | P.StartWork " | + | ' шагов может быть сколько угодно. не обязательно 100 |
| + | ' первый булевский параметр указывает надо ли принудительно | ||
| + | ' вывести окно с процентами поверх всех остальных | ||
| + | ' второй булевский параметр -- можно ли прервать процесс кнопкой Прервать | ||
| + | |||
| + | P.StartWork "Заголовок окна", "Название процесса", 100, True, True | ||
For I = 1 To 100 | For I = 1 To 100 | ||
| − | |||
| − | ' | + | ' имя шага и приращение |
| − | + | ' приращение не обязательно 1, например, | |
| − | + | ' если на разных шагах процесса выполняется | |
| + | ' разный объем работ | ||
| + | P.StartStep "Шаг #" & I, 1 | ||
| + | |||
| + | ' что-то делаем. для учебных целей -- просто пауза | ||
| + | |||
WinAPI.Sleep 200 | WinAPI.Sleep 200 | ||
| + | |||
| + | ' пользователь прервал наш процесс? | ||
| + | |||
| + | If P.Canceled Then Exit For | ||
Next | Next | ||
| − | + | ||
| + | ' процесс закончен. Булевский параметр показывает надо ли | ||
| + | ' закрыть окно (True) или пусть повисит, пока пользователь его не закроет | ||
| + | |||
P.EndWork "Обработка завершена успешно", False | P.EndWork "Обработка завершена успешно", False | ||
End Sub | End Sub | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Текущая версия на 16:27, 8 июня 2016
| Модуль: GdccGlobal.pas | Конструкторы и деструкторы | Свойства | Методы | События | Наследованные члены |
Delphi:
TgdccProgress = class(TObject)
[править] Описание
Класс для организации прогресс бара (progress bar).
Пример использования в скрипт-функиях:
Option Explicit Sub ShowProgressWindow Dim Creator, P, I Set Creator = New TCreator Set P = Creator.GetObject(nil, "TgdccProgress", "") ' шагов может быть сколько угодно. не обязательно 100 ' первый булевский параметр указывает надо ли принудительно ' вывести окно с процентами поверх всех остальных ' второй булевский параметр -- можно ли прервать процесс кнопкой Прервать P.StartWork "Заголовок окна", "Название процесса", 100, True, True For I = 1 To 100 ' имя шага и приращение ' приращение не обязательно 1, например, ' если на разных шагах процесса выполняется ' разный объем работ P.StartStep "Шаг #" & I, 1 ' что-то делаем. для учебных целей -- просто пауза WinAPI.Sleep 200 ' пользователь прервал наш процесс? If P.Canceled Then Exit For Next ' процесс закончен. Булевский параметр показывает надо ли ' закрыть окно (True) или пусть повисит, пока пользователь его не закроет P.EndWork "Обработка завершена успешно", False End Sub