Нужно реализовать чтобы при запуске дочерней формы все компоненты в ней обнулились (поля, таймеры и т.д.) тоесть чтобы дочерняя форма как-бы стартовала все время заново. Соответственно и при закрытии дочерней формы все процессы в ней (таймеры, циклы и т.д.) убивались.
Как вариант пробовал ChildFormEx в режиме Mode=OnlyOnce с показом как модальной (doShowModal) - все хорошо и запускается по новой и убивает все после закрытия, но одна беда - в главной родительской форме стоит асинхронный COM-порт и он передает данные в дочернюю форму и дочерняя форма отправляет данные назад. Данные передаются в дочернюю форму нормально, а при попытке что-то отправить в порт - программа вываливается с ошибкой, причем непонятно какой, каждый раз по разному или с зависанием или с закрытием программы... Я так понимаю - это из-за модальности так-как процессы основной формы заморожены и чегото туда сувать в это время некоректно?
Можно как-то сделать по другому? Или всетаки придется мостить кучу линков на сбросы и остановки компонентов в дочерней форме?
------------ Дoбавленo в 20.49:
PS Походу это таки связано с работой асинхронного порта в главной форме (именно выдаче данных для дочерней формы). Я так понимаю - это тупик, так как работа в основной форме должна быть остановлена, а асинхронный порт там что-то делает, что и вызывает неадекватную реакцию... да и порт асинхронный, как а понимаю, не совсем стандартный компонент... Жалко (
|
Ответов: 53
Рейтинг: 1
|
|||
| карма: 0 |
|



Поиск
Друзья
Администрация