Bonjour a tous
voila je vous expose mon probleme:
je dois rendre un projet d'informatique la semaine prochaine, projet qui doit simuler un carrefour.
la gestion des feu etant terminée je me suis attaquer au voiture qui doivent y circuler.
je les simule par des TImages que je genere automatiquement grace a
TImage *haut[100] = {0};
void gen_haut(void)
{
haut[i] = new TImage (*haut);
haut[i]->Parent=Form1;
haut[i]->Top=30;
haut[i]->Left=200;
haut[i]->Visible=true;
haut[i]->AutoSize=false;
haut[i]->AutoSize=false;
haut[i]->Height=57;
haut[i]->Width=33;
haut[i]->Proportional=true;
haut[i]->Picture->LoadFromFile("b1.jpg");
haut[i]->Align=alNone;
haut[i]->Center=false;
i++;
}
Au depart, pour les deplacer je voulais utiliser un seul timer pour toutes les voitures mais je me suis rendu compte que cela n'etait pas possible.
Je crois(dites moi si je me trompes) que je dois utiliser un timer pour chaque voiture créée.
Donc a chaque création de voiture un timer serais generer automatiquement et serais associer a cette voiture.
au moment ou je supprime mon objet je supprime egalement mon timer.
Pour créer mon timer automatiquement je m'y suis pris comme ceci:
TTimer *avhaut[100] ={0} ;
void generation (void)
{
avhaut[i]= new TTimer (*avhaut);
avhaut[i]->Interval=5000;
avhaut[i]->Enabled=true;
avhaut[i]->OnTimer; <------------ c'est la mon probleme
}
Mon probleme est que je n'arrive pas trouver comment executer mon code qui dois s'executer dans le timer????
j'ai essayer en inserant un timer classique appeler timer1 qui serait appeler par les timer generer:
et je mettais
avhaut[i]->OnTimer(timer1);mais le programme plante lors de l'execution.
avhaut[i]->Assign(timer1);
me fait la meme chose
Voila si quelqu'un aurais la bonté de m'aiguiller ce serait tres sympa

j'espere avoir ete claire dans mon explication
merci a tous