Показать сообщение отдельно
  #1  
Старый 19.07.2010, 14:40
Tier Tier вне форума
Прохожий
 
Регистрация: 19.07.2010
Сообщения: 1
Репутация: 10
По умолчанию Остановка выполнения процедуры на период прорисовки анимации

Доброе время суток!
Курю новичковую ветку и пока не нашел решение.
Проблема:
Остановить выполнение процедуры в конкретном месте на время выполнения анимации(n-циклов таймера которые выполняют пошаговое перемещение по окну из точки А в точку Б) после чего продолжить выполнение процедуры.

[спойлер](далее формулировка задачи чтобы можно было ответить "а оно тебе надо?")
6 складов с ящиками, 1 Вася.
Василий берет команды из стека(команды вида "из первого в пятый") и таскает ящики между складами. Скорость выполнения регулируется трекбаром на экране.
Один ньюанс: принес ящик на заполненный склад - несет обратно, спрашивает другую команду у пользователя; пришел забирать ящик с пустого склада - спрашивает у пользователя другую команду.

Касательно решения: да, можно расколотить на две процедуры то что до запуска таймера и то что после. Тогда придется заняться рукоделием и дописать в таймер еще код для того чтобы определить что Вася должен делать после того как он положил ящик на склад(то ли вернул ящик после попытки запихать на заполненный склад(и нужно запросить другую команду у юзверя), то ли выполнил команду и должен взять из стека следующую)
[/спойлер]

Добавлено 23.07.10
Подсказали добрые люди что сие решается при помощи потоков(отдельный поток на обработку анимации), попробуем
Ответить с цитированием