роботы робототехника микроконтроллеры


 Страниц (2): « 1 [2]   

> Описание: Синхронизация программы компьютера и работы оборудования.
maxika Post Id



Рядовой


Сообщений всего: 6
Дата рег-ции: Февр. 2015  



Спасибо, сделал программу, вроде все работает))
Но вот проблема???
Программа в бесконечном цикле while, считывает данные из порта и выводит на
Formu, точнее окно Memo, данные. (среда Borland C++ Builder 6)
Проблема в том, что если по форме в процессе работы цикла, щелкнуть несколько
раз мышью, то вывод данных зависает, программа работает, но данные не выводятся,
на экране зависание-песочные часы.
Даже если просто сделать любой бесконечный цикл, не касаясь моей программы,
то возникает, та же беда, несколько щелчков мыши по форме, дает зависание вывода данных.
Подскажите если знаете, как убрать эту проблему.....................
 
 Top
killgur Post Id



Гуру


Сообщений всего: 1189
Дата рег-ции: Февр. 2010  



maxika пишет:
Спасибо, сделал программу, вроде все работает))
Но вот проблема???
Программа в бесконечном цикле while, считывает данные из порта и выводит на
Formu, точнее окно Memo, данные. (среда Borland C++ Builder 6)
Проблема в том, что если по форме в процессе работы цикла, щелкнуть несколько
раз мышью, то вывод данных зависает, программа работает, но данные не выводятся,
на экране зависание-песочные часы.
Даже если просто сделать любой бесконечный цикл, не касаясь моей программы,
то возникает, та же беда, несколько щелчков мыши по форме, дает зависание вывода данных.
Подскажите если знаете, как убрать эту проблему.....................


Помойму компонент (или окно?) потерял фокус вывода и программа блокируется нет ресурсов отрисовать окно все ушло на бесконечный цикл, типа такого в Борландах происходит в данном случае с бесконечным циклом. это же не турбо паскаль под дос в конце концов.
Как лечить не помню честно.
Лучше по событию компонента таймер читать. возможно куда то складывать в буфер а оттуда считывать и выводить уже.

Eще есть потоки вот в поток можно смело вставить цикл бесконечный и программа не заблокируется но гемор взаимодействия с основным окном из потока.

(Отредактировано автором: 20 Мая, 2015 - 20:22:21)

 
 Top
Predator Супермодератор Post Id


Супермодератор


Сообщений всего: 1307
Дата рег-ции: Июль 2012  



2 варианта:
1) по клику на мему случается страшное
сделать
CODE:
memo1.active=false
- ну или типа того (точно не помню, но суть такая)
2) программа варится в бесконечном цикле и не делает больше ничего, даже не перерисовывает форму.
в бесконечный цикл вставить
CODE:
application.processmessages;
 
 Top
killgur Post Id



Гуру


Сообщений всего: 1189
Дата рег-ции: Февр. 2010  



Predator пишет:
2 варианта:
1) по клику на мему случается страшное
сделать
CODE:
memo1.active=false
- ну или типа того (точно не помню, но суть такая)
2) программа варится в бесконечном цикле и не делает больше ничего, даже не перерисовывает форму.
в бесконечный цикл вставить
CODE:
application.processmessages;


Нет времени достать нуот старый с студией борланда
надо проверить.
 
 Top
Страниц (2): « 1 [2]
« С чего начать? »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 





Powered by Exclusive Bulletin Board
ExBB FM 1.0 RC1 Smiles by Fool from Foolstown
  Яндекс.Метрика   Рейтинг@Mail.ru