![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| avk |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 26.6.2004 Репутация: нет Всего: нет |
Есть диалоговое приложение работающее с базой.
На чтение базы, сортировку и т.д. уходит некоторое время(3-5 сек.), т.е. программа как бы на время зависает. Хотелось бы сделать что бы в момент чтения базы на экране появилось окно с надписью Подождите и т.д. Вопрос: как это лучше реализовать. Заранее спасибо. |
|||
|
||||
| Manve |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 84 Регистрация: 30.7.2004 Репутация: нет Всего: 1 |
Добавь поток, в котором проводишь чтение, сортировку и т.д. и дожидайся пока он не вернет результат работы или не завершиться.
Это сообщение отредактировал(а) Manve - 31.8.2004, 23:24 |
|||
|
||||
| JackYF |
|
|||
![]() полуавантюрист ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 5814 Регистрация: 28.8.2004 Где: страна тысячи озё р Репутация: 18 Всего: 162 |
В принципе, можно обойтись без потока просто на максимальное время (5с, допустим выведи модально формочку с надписью, поставь таймер, сработает - закрой и работай дальше)
|
|||
|
||||
| Manve |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 84 Регистрация: 30.7.2004 Репутация: нет Всего: 1 |
Не красиво |
|||
|
||||
| AndyY |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
avk
скорее правильней операции с базой вынести в отдельный поток, а с диалогом давать возможность работы сразу. imho пока юзер осознает, что от него хотят, как раз все и заполнится. btw это действительно чистое время выполнения запроса? Такое время легко может теряться на заполнении ListCtrl большим числом записей, и бороться с этим нужно уже совсем другими методами. |
|||
|
||||
| Гость_avk |
|
|||
|
Unregistered |
А можно окно ожидания вывести в отдельный поток?
Делаю так
В результате окно выводится после чтения базы... |
|||
|
||||
| avk |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 26.6.2004 Репутация: нет Всего: нет |
Это был я. Забыл зарегистрится...
|
|||
|
||||
| AndyY |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 8.5.2004 Где: СПб Репутация: 2 Всего: 4 |
avk
можно. А чтобы показалось пораньше, можно вызвать pW->UpdateWindow(); но смысл потока мне не ясен - все то-же, что и в основном. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |