PictureBox zakrywa obrazy

0

Witam wszystkich, piszę program w visual studio 2008 na zaliczenie przedmiotu i mam kłopot z paroma funkcjami. Program ma za zadanie generować kilka robaków i kontrolować ich życie (jedzenie, ruch, śmierć itd)
Robaki mam w formie plików gif żeby mogły się poruszać. W programie wczytuję je do picturebox'ów. Problem w tym że główny picturebox jest tłem po którym mają sie poruszać robaki ale niestety on je zakrywa. Próbowałem ustawić to funkcją SentToBack ale nie pomogło.

Wie ktoś co z tym fantem zrobić?

0

Rysować na osobnym obrazku, po narysowaniu podpiąć obrazek pod PictureBox.

0

A w formie kodu jak by to wyglądało?

Tło mam statyczne ale robaki generuję więc jak je potem podpinać do tła?

0

Aby mogliśmy rozmawiać o kodzie powinieneś podać framefork.

0

Pojęcia nie mam o czym mówisz, w c++ siedzę od 3 dni, po prostu pobrałem visual studio i zacząłem pisać :P Wszystko działało dopóki nie dodałem tła...

0

Ok dzięki już kumam :)

Mam jeszcze problem z jednym, na zajęciach piszemy w borlandzie a ja to robie w visual studio. W kodzie z zajęć mam funkcję TShape niestety w visualu jej nie ma, czym mogę ją zastąpić?

Poniżej kod z zajęć, przeniosłem większość do visual studio ale nie mogę sobie poradzić z funkcją biedronka() bo tam siedzi ten cały TShape...

 //---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include <stdlib.h>

#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"

#define sx 400
#define sy 300

TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{

}

class biedronka
{
public:
int x,y,vx,vy,wiek;
double masa;
TShape *s;
biedronka(void);
void ruch(void);
void jedzenie(void);

};
 //  globalne
biedronka *tb[100];
int nn=20;

/*biedronka::biedronka()
{
this->x=random(sx);
y=random(sy);
vx=random(5)-2;
} */

void biedronka:: jedzenie()
{
}

biedronka::biedronka()
{
this->x=random(sx);
y=random(sy);
vx=random(5)-2;
vy=random(5)-2;
wiek=0;

s=new TShape(Form1);
s->Parent=Form1;
s->Visible=1;
s->Left=x;
s->Top=y;
}

void biedronka::ruch()
{
x+=vx;
y+=vy;
if(x>sx)
        {
        x=sx-1;
        vx=-vx;
        }
if(x<0)
        {
        x=0;
        vx=-vx;
        }
if(y>sy)
        {
        y=sy-1;
        vy=-vy;
        }
if(y<0)
        {
        y=0;
        vy=-vy;
        }
s->Left=x;
s->Top=y;
}

//---------------------------------------------------------------------------
void __fastcall TForm1::Timer1Timer(TObject *Sender)
{
int i;
for(i=0;i<nn;i++)
        {
        tb[i]->ruch();
        tb[i]->jedzenie();
        }
}

//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
 for(int i=0;i<nn;i++)
 {
        tb[i]=new(biedronka);
        }

}
//---------------------------------------------------------------------------

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0