Модераторы: Snowy, Alexeis, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Смена кадров, проблема с задержкой 
:(
    Опции темы
kindDevil
Дата 10.10.2005, 20:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 10.10.2005

Репутация: нет
Всего: нет



Такая проблема :мне нужно организовать анимацию в Delphi.
Есть такой код :

Код

procedure TForm#.Keypressed (блалалалалала)
begin
if key = '#' then with image1.canvas do // image1-на ней я делаю анимацию
begin
k:= k + 1; // k - счетчик кадров. их всего 8
if k > 8 then k := 1;
if k = 1 then Draw (0,0,кадр);
if k = 2 then Draw (0,0,кадр);
if k = 3 then Draw (0,0,кадр);
if k = 4 then Draw (0,0,кадр);
и так далее...
image1.Top := image1.Top + смещение куда хочу по вертикали
end;
end;
Так вот я хочу чтоб это выглядело примерно так :
procedure TForm#.Keypressed (блалалалалала)
begin
if key = '#' then with image1.canvas do // image1-на ней я делаю анимацию
begin
y := image1.top + смещение куда надо
repeat
k:= k + 1; // k - счетчик кадров. их всего 8
if k > 8 then k := 1;
if k = 1 then Draw (0,0,кадр);
if k = 2 then Draw (0,0,кадр);
if k = 3 then Draw (0,0,кадр);
if k = 4 then Draw (0,0,кадр);
и так далее...
image1.Top := image1.Top + (+ или - 1) ;
<!!!!!!!!!!!! задержка, чтобы можно было увидеть эффект от каждого image1.Top +-1;>

end;
end;


Так вот как сделать такую задержку????
Я пробовал использовать sleep, но он тормозит все приложение и эффекта перемещения не видно Помогите, если кто знает !
smile

Это сообщение отредактировал(а) s-mike - 11.10.2005, 07:34
PM MAIL ICQ   Вверх
s-mike
Дата 11.10.2005, 07:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 425
Регистрация: 16.1.2005
Где: Киев

Репутация: 5
Всего: 16



Модератор: Не забываем ставить тег CODE!
PM MAIL WWW   Вверх
kindDevil
Дата 12.10.2005, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 110
Регистрация: 10.10.2005

Репутация: нет
Всего: нет



Тег чего? Имаги? И ведь тег допускает только integer smile
PM MAIL ICQ   Вверх
s-mike
Дата 12.10.2005, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 425
Регистрация: 16.1.2005
Где: Киев

Репутация: 5
Всего: 16



Кнопочка Код, чтобы выделять код в тексте поста.

Это сообщение отредактировал(а) s-mike - 12.10.2005, 20:26
PM MAIL WWW   Вверх
Alexeis
Дата 13.10.2005, 09:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 55
Всего: 459



попробуй такую задержку
Код

 time := 20; //милисекунды (0,001 с)
  t  := getTickCount;
  While (getTickCount - t) < time
  do
     application.processmessages



--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Звук, графика и видео"
Girder
Snowy
Alexeis

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • По вопросам разработки игр стоит заглянуть сюда

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема »


 




[ Время генерации скрипта: 0.0559 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.