Boma
|
|
1 | |
Отследить момент загрузки данных формы: КАК?19.01.2010, 12:56. Показов 1269. Ответов 7
Метки нет (Все метки)
Доброе время суток, мудрый ALL
Давненько с тобой не общались Загружаю форму, некоторые поля которой содержат выражения - ну вроде =DSum('[Kol]';'qMy') Значения этих выражений высчитываются гораздо дольше, чем грузится сама форма. Т.е. форма загружается, а поля, содержащие выражения - остаются пустыми. Сидим ждем, пока в них появятся значения. Ох и долго ждем! Хочется, чтобы до полной загрузки данных доступ к форме был запрещен. Или, чтобы форма вообще была скрыта, пока все не прогрузится... Пытаюсь ставить что-нибудь вроде Enabled=True на события Открытие-Загрузка-Включение... - бесполезно: все события срабатывают, а данные еще не подгружены... Может, подскажешь что-нибудь, мудрый ALL? |
19.01.2010, 12:56 | |
Ответы с готовыми решениями:
7
Как отследить момент отключения флэшки Как отследить момент нажатия кнопки Как отследить момент активации приложения? Как отследить момент окончания аудио в SoundPool? |
3 / 3 / 0
Регистрация: 18.01.2009
Сообщений: 140
|
|
19.01.2010, 13:33 | 2 |
Ну,попробуйте включить таймер на открытие формы и проверять наличие значения в каком-нибудь поле и если оно есть, давать доступ и отключать таймер. (не проверял)
0
|
5 / 5 / 0
Регистрация: 19.03.2009
Сообщений: 743
|
|
19.01.2010, 13:57 | 3 |
Метод Repaint не помогает ?
0
|
Boma
|
|
19.01.2010, 15:32 | 4 |
Нет, BorisL, repaint не помогает
Да, Serge, с таймером можно покувыркаться - срабатывает, вроде... Спасибо Но неужели нельзя как-нить проще, поизящнее? У самого аксеса ничего такого нет? |
1 / 1 / 1
Регистрация: 05.01.2010
Сообщений: 235
|
|
19.01.2010, 19:44 | 5 |
Можно заранее подсчитывать значения, сохранять их во временную таблицу и показывать оттуда. Конечно, с поддержкой актуальности придётся помучиться - но зато работать будет независимо от того сколько времени понадобится на расчёт.
0
|
Boma
|
|
20.01.2010, 10:10 | 6 |
Да, Vadim, наверно можно... Но морока такая
И еще, все же, сдается, что будет тоже самое - в таблицу же данные надо предварительно занести, и еще неизвестно, что займет больше времени... |
2 / 2 / 2
Регистрация: 23.06.2007
Сообщений: 397
|
|
20.01.2010, 12:40 | 7 |
Private Sub Form_Open(Cancel As Integer)
Me.Visible = False Call CheckData End Sub Private Sub CheckData() Dim i As Long On Error Resume Next For i = 0 To Me.Controls.Count - 1 DoEvents If IsNull(Me.Controls(i).Value) = True Then i = i DoEvents Next i Me.Visible = True End Sub При обращении к контролу происходит проверка(вычисление) его значения, соотв. ждемс... естественно, если форма ленточная, то можно добавить переходы по записям
0
|
Boma
|
|
20.01.2010, 16:21 | 8 |
ДА, oldpasp!!!!
Такое решение мне нравится - работает )) Спасибо большое (и как только сразу не пришло в голову? )) |
20.01.2010, 16:21 | |
20.01.2010, 16:21 | |
Помогаю со студенческими работами здесь
8
Как отследить момент, когда компьютер выключается? Как отследить момент раскрывания выпад.списка ? Как отследить момент начала редактирования эл-та пользователем в QTableWidget Как отследить какая вкладка TabControl в данный момент активна? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |