Difference between revisions of "Form.UpdateProgress"

From SunFlurry wiki
Jump to: navigation, search
1>Admin
m (1 revision imported)
 
(No difference)

Latest revision as of 12:11, 8 June 2023

  UpdateProgress (Оповещение пользователя)
Объект:Форма
Статус разработки: Реализована
Тип:Функция
Обращение к БД:Нет
Исключения:Невозможно превратить в строку, число
Визуальность:Да

Функция изменяет текст и рисунок статуса выполнения, выводимый на текущей кнопке панели задач формы, а также во всплывающей подсказке при наведении курсора мыши на эту кнопку. Статус выполнения выводится для каждого окна отдельно. Текущий прогресс не может быть равен нулю, при передаче аргумента, равного -1, процесс не будет выводиться в виде процента выполнения (режим неопределенного прогресса). Кроме рисунка процента выполнения, можно также указать текст для задания этапа выполнения. Рисование статуса выполнения автоматически останавливается, когда текущая программа завершает работу (переходит в режим ожидания ввода пользователя). Функция может использоваться до инициализации формы.

Синтаксис

Form.UpdateProgress(<Текущий прогресс выполнения (INT)>,<Максимальный прогресс выполнения (INT)>,<Текущий текст выполнения (STRING)>)

Аргументы

  • <Текущий прогресс выполнения (INT)> - Задает число -- текущий прогресс, число должно быть меньше или равно максимальному значению прогресса. Если число равно -1, текущий прогресс не определен, иначе он будет выведен в виде процента и индикатора выполнения.
  • <Максимальный прогресс выполнения (INT)> - (необязательный аргумент) Задает число -- максимальный прогресс. Аргумент должен быть задан при каждом вызове функции, если максимальный прогресс необходим.
  • <Текущий текст выполнения (STRING)> - (необязательный аргумент) Задает дополнительный текст, который выводится в подсказке совместно с индикатором выполнения.

Примеры

//З -- запрос, пример показывает возможное применение функции UpdateProgress
While З.Next(1) Do
  Form.StatusText(Str(Round(З.ResultTable.CurLine/З.ResultTable.Size()*100,2))+"%");
  Form.UpdateProgress(З.ResultTable.CurLine,З.ResultTable.Size(),"Обновление цен...");

  ...
EndDo
Form.StopProgress();