![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Пользователь
Регистрация: 11.03.2010
Сообщений: 37
|
![]()
Всем доброй ночи. Есть вот такая программа:
![]() Читает данные из файла, передает их по COM-порту и тем временем отрисовывает эти значения в двух чартах. Столкнулся с такой проблемой: Пока идет цикл (чтение, передача, отрисовка) мне нужно переместить форму (за ее заголовок). При данной операции цикл "подвисает", пока я не отпущу заголовок окна, что не есть комильфо. Есть способы "вылечить" этот недуг? (цикл в таймер не предлагайте, он не подходит для данной программы). Вот код: Код:
|
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 11.03.2010
Сообщений: 37
|
![]()
UP.
Вопрос всё еще актуален... Надеюсь найдется знающий человек... ![]() Программа упрощена. Код:
|
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
![]()
...а вы знаете, что таймер - это простейший вариант потока, собственно реализуйте передачу в потоке (это уже не про таймер), но с учетом baudrate в Vacomm1...thread ...наилучший вариант, если в ответ хоть что-то с com-порта, тогда проще и можно организовать с ожиданием ответа и посылкой следующей команды из буфера (буфер - это ваш набор команд) ...предугадывая вопрос о примере - напомню, что есть кнопочка "поиск"
![]()
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 11.03.2010
Сообщений: 37
|
![]()
Спасибо, простые шаблоны нашел, вроде суть понял.
Такой еще вопрос: Наблюдался вылет из цикла while при сворачивании формы. Поток сможет решить и эту проблему? |
![]() |
![]() |
![]() |
#5 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]()
В каком смысле "вылет"? Программа на ошибку падает?
I'm learning to live...
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 11.03.2010
Сообщений: 37
|
![]()
"Вылет" - в смысле выходит из цикла.
То есть переходит сразу сюда: Код:
|
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 11.03.2010
Сообщений: 37
|
![]()
моя первая попытка поработать с потоком...
![]() Вот код: Код:
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 11.03.2010
Сообщений: 37
|
![]()
Сейчас проверил, проблема заключается в объявлении Vacomm в потоке.
Другие типичные задачи работают (типа скрыть/показать форму с задержкой). Так как же правильно обраться к ком-порту в данной ситуации? |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Искуственная отрисовка формы | Alt | Общие вопросы Delphi | 6 | 11.03.2010 22:09 |
Моргает label при перемещении | Maxs | Компоненты Delphi | 21 | 26.11.2009 19:57 |
Изменить курсор при перемещении формы | Nester | Общие вопросы Delphi | 11 | 28.09.2009 18:29 |
Процедура при перемещении формы | Alex Cones | Общие вопросы Delphi | 7 | 28.07.2009 09:11 |
Запоминание координат при перемещении формы | Shouldercannon | Общие вопросы Delphi | 5 | 21.06.2009 23:11 |