Вверх ↑
Ответов: 9906
Рейтинг: 351
#1: 2017-09-30 13:42:42 ЛС | профиль | цитата
Ох и любишь же ты задачу усложнять.

Казалось бы, всего-то сделать PostMessage - и исходная задача решена.
Так нет же, ее надо усложнить добавлением задержки.
Для решения исходной задачи нужны три точки: входная doDeferredEvent, выходная onDeferredEvent, верхняя Data. Ну и одноименное свойство (надо ли оно - тоже вопрос).
А в результате мы имеем ДОПОЛНИТЕЛЬНО: свойства Delay и InData, вход doStop, и выход onStop.
Да и тестировать надо будет именно эти дополнительные заморочки (особое внимание обратить надо на WM_CLOSE во время этого Delay).
Чем мы занимаемся - уже и понять нельзя... То ли развязку события делаем, то ли альтернативный таймер собираем.

То ли дело у Netspirit-а, три точки - и нет никаких проблем с пониманием.

А я бы в его элементе добавил бы анализ потока из которого идет вызов doSynchronize, и если из основного - делал бы PostMessage.
И все. Получилось бы два в одном, простом как сибирский валенок.

Мне больше нравится, когда оно "дешево и сердито"
карма: 9

0
Редактировалось 4 раз(а), последний 2017-09-30 14:58:00