Boma
1

Отследить момент загрузки данных формы: КАК?

19.01.2010, 12:56. Показов 1269. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброе время суток, мудрый ALL
Давненько с тобой не общались

Загружаю форму, некоторые поля которой содержат выражения - ну вроде
=DSum('[Kol]';'qMy')

Значения этих выражений высчитываются гораздо дольше, чем грузится сама форма. Т.е. форма загружается, а поля, содержащие выражения - остаются пустыми.
Сидим ждем, пока в них появятся значения. Ох и долго ждем!

Хочется, чтобы до полной загрузки данных доступ к форме был запрещен. Или, чтобы форма вообще была скрыта, пока все не прогрузится...
Пытаюсь ставить что-нибудь вроде Enabled=True на события Открытие-Загрузка-Включение... - бесполезно: все события срабатывают, а данные еще не подгружены...

Может, подскажешь что-нибудь, мудрый ALL?
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.01.2010, 12:56
Ответы с готовыми решениями:

Как отследить момент отключения флэшки
void __fastcall TForm1::WMDeviceChange( TMessage &Message ) { if ( Message.Msg ==...

Как отследить момент нажатия кнопки
Сам медик. Хочу усовершенствовать одну методу по исправлению заикания, но знаний по...

Как отследить момент активации приложения?
Всем привет! Который раз обращаюсь на этот форум, т.к. без ответа не уходил. Такая задача. Нужно...

Как отследить момент окончания аудио в SoundPool?
Нужно отключить анимацию рта по окончании, соответственно, речи=)

7
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
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.01.2010, 16:21
Помогаю со студенческими работами здесь

Как отследить момент, когда компьютер выключается?
Здравствуйте. Моя программа работает в трее. Windows 7 при выключении выводит окно с кнопкой...

Как отследить момент раскрывания выпад.списка ?
Источник = запрос Ограничиться списком = Да Событие click вообще не срабатывает на вып.списке.

Как отследить момент начала редактирования эл-та пользователем в QTableWidget
собственно сабж! Смотрел в QTableWidget, смотрел в QAbstractItemModel вроде ничего такого нет... ...

Как отследить какая вкладка TabControl в данный момент активна?
Прошу помощи в освоении VB.NET! Имеется форма, на ней TabControl с 3мя вкладками и Label. Сколько...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru