Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / И опять про прогрессбар... / 12 сообщений из 12, страница 1 из 1
06.09.2003, 22:43
    #32257749
Mar
Mar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Во время цикла обработки прим. 6000 записей рисуется прогрессбар во временной модальной формочке. Все идет хорошо, но где-нть на 2000 записи прогрессбар замерзает, хотя обработка продолжается. Почему замерзает Repaint?

Большущее и вперед сбасиба за ответ/совет
...
Рейтинг: 0 / 0
06.09.2003, 22:50
    #32257751
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Предлагаю вставить DoEvents. Иногда помогает. :^)
...
Рейтинг: 0 / 0
06.09.2003, 22:55
    #32257753
Mar
Mar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Ув ВладСаныч, спасиба за ответ ,но DoEvents где вставить (извиниясь может за незнание) ентот евентс?
...
Рейтинг: 0 / 0
06.09.2003, 22:56
    #32257754
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Где-нибудь внутри цикла.
...
Рейтинг: 0 / 0
06.09.2003, 23:15
    #32257757
Mar
Mar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Дело обстоит так: жметца кнопка и запускается Sub в независимом модуле, и этот Sub никакой связи с формами не имеет
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Public Sub такой-то
...
Set rst = currentDb.openrecordset ( "Стринг запроса" , dbopendynaset)
  rst.movelast
  rst.movefirst
  DoCmd.OpenForm  "Indicator" 
  Do Until rst.EOF
     ....
     showIndicator CByte((rst.AbsolutePosition+ 1 ) / rst.RecordCount *  100 )
     rst.movenext
  Loop


где showIndicator :

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Public Sub showIndicator(progressData As Byte)
Dim y As Byte
  Forms!indicator!info2 =  ""
  Forms!indicator.Caption = progressData & " % done..."
    For y =  1  To progressData
      Forms!indicator!info2 = Forms!indicator!info2 & ChrW( 9608 )
    Next y
    Forms!indicator.Repaint
End Sub


А де вставить евентс's, а?
...
Рейтинг: 0 / 0
06.09.2003, 23:20
    #32257759
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Там цикл есть. DoEvents надо вставить где-нибудь внутри него. Нужно перечислить все строки, входящие в цикл? Ну так после (или перед) любой из них.
...
Рейтинг: 0 / 0
06.09.2003, 23:34
    #32257762
Mar
Mar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Почти не понял...
Однако замечу следующее.
Вообще программа сидит на оброботке заявок (проблема с глюком на печать из этой же ... программы).
Как правило, запусакается три формы: Заявки, Сведения о Клиенте, Поиск клиетна. Если по ходу нажать нечто вроде пересчет остатков на складе, то идет пересчет отправки и отражается прогресс-бар.
Тут происходит нечто мистическое (для меня). Прогресс все рисует, что такая-то из 6345 и когда дело доходит до 2324 (условно), то: видимые окна вдруг становятся неактивными (не ярко голубой фрейм), внизу, где полоска Windows появляется еще одна задача (Access - [prg2003]), и все внешне не изменяется не экране, пока не кончится цикл...

Но если ни одна из форм не загружена, то прогресс об..рисуется без проблем...
...
Рейтинг: 0 / 0
07.09.2003, 09:34
    #32257773
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Предлагаю все-таки воспользоваться моим советом. Если не поможет, будем думать дальше.
...
Рейтинг: 0 / 0
07.09.2003, 15:47
    #32257814
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
В моей реплике от вчера, 23:20 какая фраза непонятна?
...
Рейтинг: 0 / 0
07.09.2003, 17:09
    #32257822
Mar
Mar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Непонятно было про то, к чему привязывается DoEvents.
Но: умный совет + встроенный хелЬп и все славненко! (правда еще в большом количестве случае +пиво)

БАльшое спасиба!!!
...
Рейтинг: 0 / 0
07.09.2003, 17:10
    #32257823
Владимир Саныч
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
> Непонятно было про то, к чему привязывается DoEvents.

Дык, ни к чему и не привязывается. :^)
...
Рейтинг: 0 / 0
07.09.2003, 17:24
    #32257827
Mar
Mar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
И опять про прогрессбар...
Ага, не привязывается. А еще экран держит правильно (т.е. обновляются поля в форме, что на экране, если в соурсе что поменялось). А еще - никак не отражается на скорострельности
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / И опять про прогрессбар... / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]