Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на языке Pascal


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на языке Pascal

Выпуск № 028
от 12.08.2002, 18:50

Администратор:
Имя: Sensey
URL: Информационный ресурс
ICQ: 105679124
Украина, Харьков
О рассылке:
Задано вопросов: 46
Отправлено ответов: 120
Активность: 260.8 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе]


 Список экспертов, ответы которых опубликованы в данном выпуске

Necro
Статус: Начальный
Общий рейтинг: 114.54
[Подробней >>]
Sensey
Статус: Профессиональный
Общий рейтинг: 133
Телефон: +38 (0572) 41-76-04 дом.
[Подробней >>]
Byter
Статус: Доверительный
Общий рейтинг: 124.59
[Подробней >>]
 
Sanya
Статус: Опытный
Общий рейтинг: 133.87
[Подробней >>]
portos
Статус: Доверительный
Общий рейтинг: 154.76
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 46. Доброго времени суток господа Эксперты. У меня такой вопрос, в приложении программа которая выводит ... (ответов: 5)

Вопросов: 1, ответов: 5


 Вопрос № 46

Доброго времени суток господа Эксперты.
У меня такой вопрос, в приложении программа которая выводит на экран квадрат, который перемещается при нажатии клавиш (стрелки) и по нажатию кл. "F" он как бы выстреливает линией. Проблемма в том что пока "летит" эта линия, невозможно выстрелить ещё раз или переместить квадрат. Подскажите какую-нибудь идею или алгоритм как это можно реализовать. Зарание благодарен.


Приложение:


Вопрос отправлен: 09.08.2002, 18:46
Отправитель: Warg

[Следующий вопрос >>] [Список вопросов]

Отвечает Necro

Добрый день, Warg!
Надо прорисовывать выстрел параллельно со всем остальным. То есть, никакого delay, просто сохраняешь в какой-нить переменной координаты выстрела и через n(подберешь нужную задержку) витков цикла убирается. Хорошо бы её каждый раз перерисовывать.

Ответ отправлен: 09.08.2002, 20:04
Отправитель: Necro


Отвечает Sensey

Доброе время суток, Warg!
Сейчас некогда, вот за пять минут наваял....
Смотри.
А чтобы несколько выстрелов сделать, заведи массив координат выстрелов, вместо логического flFire - массив лог значений, и если истина - обрабатывай каждый выстрел отдельно
То есть представь каждый эллемент объектом, и вызывай его обработчик...
Если хошь поподробнее, пиши, может будет время, наваяю что-то примитивное с использованием ООП...


Приложение:

Ответ отправлен: 09.08.2002, 20:32
Отправитель: Sensey


Отвечает Byter

Добрый день, Warg!
Я не стал оптимизировать твой алгоритм.
А написал более оптимальный.
В программе есть коментарии.
Если что-то не понятно ,или
помочь еще в чем-нибудь пиши,
всегда рад помочь.
e-mail:
Byter2002@mail.ru
P.S.
Если хочешь давай напишим
вместе какой-нибудь проект!
Byter.


Приложение:

Ответ отправлен: 10.08.2002, 21:35
Отправитель: Byter


Отвечает Sanya

Добрый день, Warg!
Оформи чтение клавиши как процедуру и вызывай её из процедура Fire тоже, а то получается пока у тебя эта процедура не завершиться ты ничего делать не могёшь!
Удачи!

Ответ отправлен: 10.08.2002, 08:20
Отправитель: Sanya


Отвечает portos

Добрый день, Warg!
для решения етой проблеммы нужно воспользоваться обэктным программироваием, тоисть создаешь обект квадрат и обект стрелку, тогда они будут двигаться независимо друг от друга, почитай литературу по этому поводу, так как просто так сложно что нибуть понять (по коду), если раньше не видел, хотя по сути - все очень просто


Ответ отправлен: 12.08.2002, 18:40
Отправитель: portos



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (41)
C / C++ (29)
Perl (14)
Delphi (20)
Pascal (33)
Basic / VBA (12)
Java / JavaScript (14)
PHP (11)
MySQL / MSSQL (11)
Пользователю
Windows 95/98/Me (49)
Windows NT/2000/XP (32)
"Железо" (38)
Поиск информации (19)
Администратору
Windows NT/2000/XP (18)
Linux / Unix (13)
Юристу
Гражданское право (7)
Семейное право (5)
Трудовое право (6)
КоАП (4)

Отправить вопрос всем экспертам выбранной рассылки.




be number one Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное