Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.06.2015, 13:27   #1
AsyaPro
 
Регистрация: 22.06.2015
Сообщений: 7
По умолчанию Движение сгенерированных объектов.

Есть массив с объектами(TImage), также на форме установлен таймер с задержкой в 3с. По истечению трёх секунд рандомно генерируется один из 2-ух объектов. Это всё работает, но как сделать, что бы эти объекты начали движение по Oy!? Вот код:
Код:
var
  Form1: TForm1;
  randomiz: integer;
  i, v, t:integer;


implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
i:=1;
DoubleBuffered:=true;
end;

var sn: Array [1..10000] of TImage;
procedure TrueGenerate;
begin
 sn[i]:=TImage.Create(form1);
 sn[i].Parent:=form1;
 sn[i].Width:=130;
 sn[i].Height:=130;
 sn[i].Picture:=Form1.Image1.Picture;
 sn[i].Left:=random(Form1.Width);
end;

var ir: Array [1..10000] of TImage;
procedure FalseGenerate;
begin
 ir[v]:=TImage.Create(form1);
 ir[v].Parent:=form1;
 ir[v].Width:=130;
 ir[v].Height:=130;
 ir[v].Picture:=Form1.Image2.Picture;
 ir[v].Left:=random(Form1.Width);
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin

randomiz:=random(4);
if randomiz<3 then
begin
TrueGenerate;
end;

if randomiz>2 then
begin
FalseGenerate;
end;

end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
 sn[i].Top:=sn[i].Top+5;
 ir[v].Top:=ir[v].Top+5;
end;

end.
Программа запускается, TImage едет по Oy, НО выдаётся огромная куча ошибок(см. прикрепление).
Изображения
Тип файла: png dsc.png (6.1 Кб, 93 просмотров)

Последний раз редактировалось AsyaPro; 22.06.2015 в 15:37.
AsyaPro вне форума Ответить с цитированием
Старый 22.06.2015, 13:58   #2
Toxa
Форумчанин Подтвердите свой е-майл
 
Аватар для Toxa
 
Регистрация: 01.12.2006
Сообщений: 514
По умолчанию

где задается значение переменной "v" ?!
почему не меняется значение переменной "i" ?!
Пишу на Delphi за еду
Toxa вне форума Ответить с цитированием
Старый 22.06.2015, 14:30   #3
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Самый первый шаг к правильному, быстрому, красивому и годному решению твоей задачи - выбросить TImage из проекта. Совсем.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.06.2015, 14:33   #4
AsyaPro
 
Регистрация: 22.06.2015
Сообщений: 7
По умолчанию

@Min@y, а поподробнее можно, ну, носом ткнуть где и что изменить.
@Toxa, нет, нужно что бы было именно TImage, TShape уж точно не подойдёт.
AsyaPro вне форума Ответить с цитированием
Старый 22.06.2015, 14:51   #5
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
нужно что бы было именно TImage
Кому нужно? Как звучит задание в оригинале?
Цитата:
TShape уж точно не подойдёт.
А кто говорил про TShape?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.06.2015, 14:56   #6
AsyaPro
 
Регистрация: 22.06.2015
Сообщений: 7
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Кому нужно? Как звучит задание в оригинале?

А кто говорил про TShape?
А что вы предложите вместо TImage!?
В оригинале я написал, что есть массив с TImage, то есть я про него и писал?
AsyaPro вне форума Ответить с цитированием
Старый 22.06.2015, 15:08   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
я написал, что есть массив с TImage, то есть я про него и писал?
Так не пойдёт. Я спрашивал именно про оригинал задания! Можно фото/скриншот/сам документ (копия), в котором сформулирована задача, которую ты пытаешься решить путём написания программы. Без этого опять будет XYZ.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 22.06.2015, 15:15   #8
AsyaPro
 
Регистрация: 22.06.2015
Сообщений: 7
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Так не пойдёт. Я спрашивал именно про оригинал задания! Можно фото/скриншот/сам документ (копия), в котором сформулирована задача, которую ты пытаешься решить путём написания программы. Без этого опять будет XYZ.
Оригинал задания в моей голове, сам придумал, если быть точным.
AsyaPro вне форума Ответить с цитированием
Старый 22.06.2015, 15:23   #9
Toxa
Форумчанин Подтвердите свой е-майл
 
Аватар для Toxa
 
Регистрация: 01.12.2006
Сообщений: 514
По умолчанию

Цитата:
а поподробнее можно, ну, носом ткнуть где и что изменить.
нужно задать значение для v (v := 1), иначе идет обращение неизвестно к какой записи массива, скорее всего даже вне заданного диапазона, от сюда и ошибка
и переменные надо наращивать перед созданием Timage, иначе в массиве будет ссылка только на последний созданный и от массива не будет толку
перефразирую minay, что надо получить в результате?
Пишу на Delphi за еду
Toxa вне форума Ответить с цитированием
Старый 22.06.2015, 15:24   #10
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Оригинал задания в моей голове, сам придумал, если быть точным.
Ну так сформулируй для дядей грамотно, и не морочай голову. Ибо 50% решения - грамотная формулировка задания.
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Движение объектов по траектории Vladlena Общие вопросы C/C++ 0 19.05.2013 18:38
Движение объектов, паскаль Alina111 Помощь студентам 3 06.06.2012 14:59
движение графических объектов elka Общие вопросы C/C++ 9 25.04.2012 17:24
Движение объектов в Delphi citruswa Общие вопросы Delphi 3 10.03.2012 10:16
Движение графических объектов Krivo1993 Помощь студентам 4 31.01.2011 13:58