Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ProgressBar... / 13 сообщений из 13, страница 1 из 1
25.06.2003, 13:12
    #32191134
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
Помогите с ProgressBar'ом разобраться. Мне необходимо поставить его на процесс загрузки формы. Просто никогда этим не занимался, не знаю как прицепить-то его к загрузке определенной формы. Объясните пожалуйста. В поиске по форуму ничего конкретного не нашел. Заранее благодарен.
...
Рейтинг: 0 / 0
25.06.2003, 13:22
    #32191151
Sirios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
А вы нашли сам этот контрол?
...
Рейтинг: 0 / 0
25.06.2003, 13:26
    #32191163
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
...Всмысле? Сам ProgressBar? Конкретизирую...

Есть форма, которая грузится весьма долго. Как мне присобачить к загрузке этой формы контрол ПрогрессБар, чтобы он показывал процесс этой самой загрузки?..
...
Рейтинг: 0 / 0
25.06.2003, 13:27
    #32191165
Sirios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
Дело в том, что пока происходит загрузка основной формы, сам ентот бар вы не увидите. Форма отобразит свое содержимое лишь после метода Load самой формы. Поэтому вам нуна создать дочернюю форму, привязанную к основной без заголовка формы. На него накиньте нужный БАР. В самом методе LOAD основной формы, последовательно меняйте текущее значение бара и рефрешуйте дочернюю форму. Вот так-то ... :)
...
Рейтинг: 0 / 0
25.06.2003, 13:29
    #32191169
Sirios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
И ещё вопросик :). А почему такой вопрос в асекс-форуме? :)
...
Рейтинг: 0 / 0
25.06.2003, 13:42
    #32191193
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
> И ещё вопросик :). А почему такой вопрос в асекс-форуме? :)

Интересное дело, а почему бы и нет? Я говорю, что не работал ещё с такими контроллами, потому и просил подсказать.

И всё же не могу понять: каким образом зацепить величину значения ПрогрессБара в OnLoad'е формы? То есть через каждую строчку кода в событии OnLoad указывать значение прогресс бара? Или как-то через таймер формы?А по поводу дочерней формы: как связать её с той, что загружается? Опять же в OnLoad'е поставить первой строчкой кода ДочФорма.Open а последней: ДочФорма.Close? Я правильно понимаю?
...
Рейтинг: 0 / 0
25.06.2003, 13:43
    #32191195
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
...вдогонку:
Как последовательно менять значение контрола в событии Лоад загружаемой формы?
...
Рейтинг: 0 / 0
25.06.2003, 13:50
    #32191208
Sirios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
>А по поводу дочерней формы: как связать её с той, что загружается? Опять же в OnLoad'е поставить первой строчкой кода ДочФорма.Open а последней: ДочФорма.Close? Я правильно понимаю?

Совершенно правильно! Но вот с таймером формы - по моему вы переоценили возможности VS т.к. приложение не знает когда конкретно закончится загрузка (может форма будет долго конектиться к удаленной базе?), приложение может только прогнозировать время выполнения, ГДЕ ПРОИДЕННЫЕ ЭТАПЫ УКАЗЫВАЕТ САМ РАЗРАБОТЧИК. Так вот :) Поэтому вы должны сами после определенных загручзочных команд оценивать завершенность - эти оценки и нуна отобразить в баре.
...
Рейтинг: 0 / 0
25.06.2003, 14:04
    #32191233
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
Спасибо, вообщем я понял, достаточно подробно описано. Но вот вопрос: если на загрузке формы стоит пара-тройка команд типа Поле1.Value=Значение1, Поле2.Visible=false и ещё какая-нибудь мелочёвка, а сам процесс загрузки долог от того, что форма вообще содержит огромное количество контроллов, то как мне поймать интервалы? Ведь в явном виде загрузка всех контроллов в Лоаде формы не указана? Да и в случае коннекта к удаленной базе ведь тоже наверное можно повесить прогрессбар, несмотря на то что явно этот конект в Лоаде не описан.
...
Рейтинг: 0 / 0
25.06.2003, 14:15
    #32191245
Sirios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
А вот в случае коннекта к удаленной базе, можно точно указать верхний порог времени присоединения, но это настройка ADOconnection и мы сами этот порог устанавливаем. А приложение может закончить коннект гораздо раньше, поэтому как связь налажена, необходимо произвести скачек на следующий этап загрузки формы, потому как бар будет учитывать только вырхнюю отведенную границу. :) рад был помочь.
...
Рейтинг: 0 / 0
25.06.2003, 15:15
    #32191346
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
Вообщем сделал, как советовал, но, как оказалось, проблема тормознутости загрузки не в самой форме, а вообще в загрузке базы. Посему при открытии основной формы на доли секунды появляется форма с прогрессбаром, а потом сразу - основная. Прогрессбара, вообщем-то, и не видно... А в этом случае никак не заполнить визуально паузу при открытии базы?
...
Рейтинг: 0 / 0
25.06.2003, 15:29
    #32191383
G&P
G&P
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
Это опять я!


Так кто-нить подскажет чё-нить?
...
Рейтинг: 0 / 0
26.06.2003, 09:33
    #32191907
Sirios
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ProgressBar...
Подвяжи бар к реальному времени. Если например в

ADOconnectionю.timeout=40

,то пускай бар на самотек системного времени, а когда база приконектится, то придется сделать скачек к следующей точке бара. Довольно все просто и действенно :)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ProgressBar... / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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