Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 10.01.2009, 19:09   #1
SIV84
Пользователь
 
Регистрация: 09.01.2009
Сообщений: 44
По умолчанию Вопрос по визуализации задачи

Подскажите пожалуйста. Есть процесс который занимает от 15 до 60 секудн времени на формирование отчета. Процесс запускается двойным нажатием в окне листбокса. Сталкнулся с проблемой. Народ, который пользуется программой не успев дождатся результата выполняет операцию повторно. Некотрые даже по несколько раз. Возможно ли каким то образом визуализировать время ожидания необходимого длявыполнение операции?
SIV84 вне форума
Старый 10.01.2009, 22:25   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

А чем Вас не устраивает решение из этой темы?
EducatedFool вне форума
Старый 10.01.2009, 23:03   #3
SIV84
Пользователь
 
Регистрация: 09.01.2009
Сообщений: 44
По умолчанию

Вполне устраивает. Спасибо
SIV84 вне форума
Старый 10.01.2009, 23:45   #4
SIV84
Пользователь
 
Регистрация: 09.01.2009
Сообщений: 44
По умолчанию

Возникает следующий вопрос. У меня открыта форма с которой я работаю. При обращении к форме F_Progress она инециализируется на экране и не выполняет никаких действий. Она не может работать когда открыта ещё одна форма?
SIV84 вне форума
Старый 10.01.2009, 23:55   #5
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

В той теме, на которую я привёл ссылку, была старая версия индикатора.

Более новую версию можно посмотреть в этом посте.

От Вас требуется просто скопировать (перетащив мышкой в редакторе VBA) форму F_Progress и модуль класса ProgressIndicator из файла примера в свой файл.

Использовать индикатор можно примерно так:

Код:
Sub testProgressIndicator()
    Dim pi As New ProgressIndicator    ' создаём новый индикатор

    pi.Show "Проверка работы индикатора прогресса"    ' отображаем его
    pi.ShowPercents = True    ' включаем вывод процентов в заголовок окна

    For i = 0 To 30
        pi.StartNewAction i * 3, i * 3 + 2, "Действие  " & i ' сообщаем индикатору, 
                  ' что начато новое действие, в течение которого индикатор прогресса будет отображать 
                  ' процент выполнения от i * 3  до  i * 3 + 2  процентов
                  ' (строка хоть и не обязательная, но без неё мы ничего не увидим)


        pi.line1 = "Текст в первой строке"
        pi.line2 = "Текст во второй строке"
        pi.line3 = "Текст в третьей строке"

        ' здесь у нас расположен основной код
        For h = 1 To 10000: DoEvents: Next    ' пауза
    Next

    pi.Hide    ' закрываем индикатор
End Sub
Основные строки (обязательные) выделены жирным шрифтом.
Цветом выделены параметры методов объекта ProgressIndicator.

Там есть ещё несколько функций. Но описывать их долго.
Я, хоть сам и сочинял код, порой забываю, какие функции там реализованы

Я его делал давно (когда ещё плохо знал VBA), поэтому реализовано всё не самым лучшим образом. Но в основном функциональности хватает для простых задач.

Цитата:
Она не может работать когда открыта ещё одна форма?
Может. И работает.

Возможно отображение сразу нескольких таких индикаторов (один над другим), и т.д. и т.п.
Прикрепите к сообщению файл, в котором надо использовать индикатор, и я напишу код для его использования.

Последний раз редактировалось EducatedFool; 11.01.2009 в 00:20.
EducatedFool вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 задачи на Си Molotok Помощь студентам 3 21.12.2008 14:25
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
вопрос по сокетам и общение как в ICQ.Сложный вопрос... Руслантус Общие вопросы C/C++ 2 12.08.2008 21:10
Вопрос жизни и смерти! 3 задачи в Паскале... AnutkaTheBest Помощь студентам 11 03.06.2008 18:12
2 Задачи Stan Помощь студентам 4 02.06.2007 19:47