Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Зависание Vb-программы при выполнение цикла

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
DW



Зарегистрирован: 26.08.2005
Сообщения: 17

СообщениеДобавлено: Пт Авг 26 2005 11:15    Заголовок сообщения: Зависание Vb-программы при выполнение цикла Ответить с цитатой

Ситуация: программа читает файл. Файл довольно обьемный. Процесс чтения отображает Progress-bar на отдельной форме. На этой же форме с прогрессом стоит кнопка "Отмена".
Проблемма: в процессе чтения программа не реагирует на нажатия кнопки "отмена". Точнее ее вообще невозможно нажать. Так же как нет реакции на нажатие кнопки "Esc", хотя это и предусмотрено кодом.
Вопрос: Как заставить програму работать корректно, тоисть реагировать на события?
Мнение: насколько я знаю, хотя я могу и ошибаться, во время выполнения цикла программа не реагирует на системные запросы Windows. И все беды от этого. Вот как только этого избежать?
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Kefir



Зарегистрирован: 16.04.2005
Сообщения: 443
Откуда: Пермь

СообщениеДобавлено: Пт Авг 26 2005 11:36    Заголовок сообщения: Ответить с цитатой

Ой... Ну в любой книжке написано. Если у вас вычисления слишком объемные выносите вы их в отдельный поток, вот и все...
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
Kaplinale



Зарегистрирован: 27.05.2005
Сообщения: 102
Откуда: г. Нижний Новгород

СообщениеДобавлено: Пт Авг 26 2005 12:09    Заголовок сообщения: Ответить с цитатой

Проблему можно решить использованием инструкции DoEvents, которая предписывает программе следить за событиями, происходящими в системе. Удачи! Laughing
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
DW



Зарегистрирован: 26.08.2005
Сообщения: 17

СообщениеДобавлено: Пт Авг 26 2005 16:26    Заголовок сообщения: Ответить с цитатой

Спасибо за советы. Я уже и сам разобрался - DoEvents помогла. Основная проблемма была и остается в том, что у меня почти нет документаии по VB, это я про help-ы. Все что есть - личный опыт, логика, help-ы MS Office, ну и конечно и-нет.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Kaplinale



Зарегистрирован: 27.05.2005
Сообщения: 102
Откуда: г. Нижний Новгород

СообщениеДобавлено: Пн Авг 29 2005 09:12    Заголовок сообщения: Ответить с цитатой

Если серьезно изучаешь VB, советую раскошелиться и купить книги Андрея Гарнаева - "VBA" и "VB". Читаются легко, море примеров. Удачи!
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Отправить e-mail
DW



Зарегистрирован: 26.08.2005
Сообщения: 17

СообщениеДобавлено: Вт Авг 30 2005 20:44    Заголовок сообщения: Ответить с цитатой

Я серьезно изучаю програмирование Smile. А на каком языке писать - вопрос удобства. На данный момент я занялся VB, поскольку работаю над одним проектом совместно с друзьями, а они пишут преимущественно на VB.
А за совет спасибо. Было бы еще лучше получить линки на эти книги и стянуть из с и-нета, а не покупать. Но все-равно спасибо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...