Oké, köszi a kifejtésért!
Javítottam is a kódomon, és most már csak az objektumok kirajzolásával van gond. Mert ennek alapján:
class egyalak
{
public:
egyalak(int px, int py) { x=px; y=py; }
int x;
int y;
};
void __fastcall TForm1::FormCreate(TObject *Sender)
{
Graphics::TBitmap *AlakokKepe = new Graphics::TBitmap;
AlakokKepe->LoadFromFile("alak\alak_all.bmp");
egyalak *alakok[5];
int i;
for (i=0; i<5; i++)
{
alakok[i]=new egyalak(4,i+40);
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Kirajzol(TObject *Sender)
{
int i;
for (i=0; i<5; i++)
{
Canvas->Draw(alakok[i]->x,alakok[i]->y,AlakokKepe);
}
}
az OnPaint-ban lévő Kirajzol függvény sem az alakok-at, sem az AlakokKepe-t nem ismeri fel. Ezeket hogyan tudnám megadni, hogy felismerje? És melyik a célszerűbb: az egyalak osztályban letárolni a képet, vagy így, ahogy most van, külön változóból (AlakokKepe) beolvastatni a Draw-ban? Azért kérdeztem, hogy ezt a képet milyen típusként kellene megadnom, mert ez a deklarációkor szükséges.
Egyébként a __fastcall utasítás szükséges a függvénynévnél? Ha jól olvastam, ez a gyorsítás érdekében van odaírva, hogy regiszterekben adódjon át a paraméter. Nem tudom, hogy ez pontosan miért jó, de tényleg célszerű?